개인 재정 Python의 그래프 데이터로 작업하기 - 더미

Python의 그래프 데이터로 작업하기 - 더미

차례:

비디오: [Colab] 구글 드라이브의 Colabortory를 통해 파이썬 데이터 시각화툴(Matplotlib, Seaborn, Altair, Plotly, bokeh) 사용하기 2025

비디오: [Colab] 구글 드라이브의 Colabortory를 통해 파이썬 데이터 시각화툴(Matplotlib, Seaborn, Altair, Plotly, bokeh) 사용하기 2025
Anonim

대부분의 데이터 과학자는 어느 시점에서 그래프 데이터로 작업해야합니다. 파이썬은 그 기능을 제공합니다. 하나의 웹 페이지가 하이퍼 링크를 통해 다른 웹 페이지에 연결되는 방식과 같은 다른 데이터 요소에 연결된 데이터 포인트를 상상해보십시오. 이러한 각 데이터 포인트는 노드 입니다. 노드는 링크 를 사용하여 서로 연결합니다.

모든 노드가 다른 모든 노드에 링크되는 것은 아니므로 노드 연결이 중요 해집니다. 노드와 그 링크를 분석하여 거리에서 고속도로를 사용하여 직장에서 집까지 갈 수있는 최상의 방법을 정의하는 등 데이터 과학에서 모든 재미있는 작업을 수행 할 수 있습니다.

인접 행렬 은 그래프의 노드 사이의 연결을 나타냅니다. 한 노드와 다른 노드 사이에 연결이있을 때 행렬은이를 0보다 큰 값으로 나타냅니다. 행렬에서 연결의 정확한 표현은 그래프의 방향 (연결 방향이 중요한 경우) 또는 방향이 없는지 여부에 따라 다릅니다. 많은 온라인 예제의 문제점은 저자가 설명을 위해 간단하게 유지한다는 것입니다. 그러나 실세계 그래프는 대개 거대하며 단순히 시각화를 통해 쉬운 분석을 무시합니다. 작은 교차로를 고려할 때 작은 도시라도 가질 수있는 노드의 수를 생각해보십시오. 다른 많은 그래프는 훨씬 더 크고 단순히보고 있으면 흥미로운 패턴이 드러나지 않습니다. 데이터 과학자들은 인접 행렬 a hairball

을 사용하여 복잡한 그래프를 표현할 때이 문제를 부릅니다.

NetworkX 기본 사용

모든 코드를 처음부터 작성해야하는 경우 그래프 작업이 어려워 질 수 있습니다. 다행히도 Python 용 NetworkX 패키지는 복잡한 네트워크 (또는 그래프)의 구조, 역 동성 및 기능을 손쉽게 만들고 조작하고 연구 할 수있게합니다. 이 패키지를 사용하여 다이 그래프와 멀티 그래프로 작업 할 수도 있습니다.

NetworkX의 주된 강조점은 털볼의 모든 문제를 피하는 것입니다.간단한 호출을 사용하면 그래프 및 인접 행렬을 사용하여 작업하는 복잡성이 크게 줄어 듭니다. 다음 예제는 NetworkX 제공 그래프 중 하나에서 기본 인접성 행렬을 만드는 방법을 보여줍니다.

import networkx를 nx G = nx로 생성합니다. cycle_graph (10) A = nx. adjacency_matrix (G) print (A. todense ())

이 예제는 필요한 패키지를 가져 오기 시작합니다. 그런 다음 cycle_graph () 템플릿을 사용하여 그래프를 만듭니다. 그래프에 10 개의 노드가 있습니다. adjacency_matrix ()를 호출하면 그래프에서 인접성 행렬이 만들어집니다. 마지막 단계는 다음과 같이 출력을 행렬로 출력하는 것입니다. <9 0 0 0 0 0 0 0 0 1> [1 0 1 0 0 0 0 0 0 0] [0 1 0 1 0 0 0 0 0 0] [0 0 1 0 1 0 0 0 0 0] [0 0 0 1 0 1 0 0 0 0] [0 0 0 1 1 0 1 0 0 0] [0 0 0 0 0 1 0 1 0 0] [0 0 0 0 0 1 0 0 0] [0 0 0 0 0 0 0 1 0 1] [1 0 0 0 0 0 0 1 0]]

당신은 테스트 목적으로 처음부터 직접 그래프를 작성하십시오. NetworkX 사이트는 사용할 수있는 여러 표준 그래프 유형을 문서화합니다.이 유형은 모두 IPython에서 사용할 수 있습니다.

그래프를 생성 한 후에 그래프가 어떻게 보이는지 보는 것은 흥미로운 일입니다. 다음 코드는 그래프를 표시합니다.

원본 그래프를 그립니다.

import matplotlib. plpl nx로 pyplot. draw_networkx (G) plt. 플롯은 노드 1과 노드 5 사이에 가장자리를 추가 할 수 있다는 것을 보여줍니다. add_edge () 함수를 사용하여이 작업을 수행하는 데 필요한 코드는 다음과 같습니다.

그래프 추가 플롯. G. add_edge (1, 5) nx. draw_networkx (G) plt. 쇼 ()

Python의 그래프 데이터로 작업하기 - 더미

편집자의 선택

여성 건강 : 케겔 운동 방법 - 인형

여성 건강 : 케겔 운동 방법 - 인형

케겔 운동은 성기의 근육을 타겟으로합니다. 이 근육은 출산 중에 발생하는 스트레칭으로 인해 종종 약해지지만, 임신 한 적이없는 여성을 포함하여 어떤 여성이라도 적절한 케겔 (Kegel)을하는 법을 아는 것이 도움이 될 수 있습니다. 본질적으로 케겔 (Kegel)은 생식기에 좋은 운동을 제공하여 ...

폐경기 동안 기대할 사항 - 인형

폐경기 동안 기대할 사항 - 인형

폐경은 모든 여성의 삶의 사실입니다. 다른 연령대의 여러 단계의 증상으로 진행됩니다. 폐경의 결과로 여성은 알을 낳지 않고 생리를 멈추지 만 여성 호르몬, 에스트로겐 및 호르몬의 생성을 감소시킵니다.

여성 건강 : 요로 감염을 예방하는 방법 - 인형

여성 건강 : 요로 감염을 예방하는 방법 - 인형

요로 감염 (UTI)은 상당히 여성의 공통점. 통증이있는 ​​배뇨 나 잦은 소변과 같은 요로 감염의 증상을 발견하면 치료를받는 것이 중요합니다. UTI 치료는 일반적으로 항생제의 빠른 과정이지만 전문가의 도움을받는 데는 지체가 있으면 치료 시간이 길어질 수 있습니다. ...

편집자의 선택

Salesforce 조직에서 깨끗한 데이터를 유지 관리하는 많은 회사에서 Salesforce 조직의 깨끗한 데이터 유지 보수

Salesforce 조직에서 깨끗한 데이터를 유지 관리하는 많은 회사에서 Salesforce 조직의 깨끗한 데이터 유지 보수

많은 사람들을 위해 일하는 것과 비슷합니다. 많은 기업들이 혜택을 인식하고 있음에도 불구하고 습관을 버리는 것에 저항합니다. 사람들은 깨끗한 데이터가 시스템에 들어갈 수 있도록 시간을 할애하고 싶지 않지만 같은 사람들은 빨리 작업 할 수 있습니다 ...

Salesforce에서 캠페인을 만드는 방법 - Professional, Enterprise 또는 Unlimited Edition 사용자를 위해 제공되는 인형

Salesforce에서 캠페인을 만드는 방법 - Professional, Enterprise 또는 Unlimited Edition 사용자를 위해 제공되는 인형

Salesforce의 모듈은 마케팅 프로그램을 관리, 추적 및 측정하는 데 사용하는 일련의 도구입니다. 캠페인 레코드는 캠페인 레코드입니다. 수동 또는 자동으로 리드, 연락처 및 / 또는 기회 레코드에 링크하여 캠페인에 대한 실제 메트릭을 제공 할 수 있습니다.

편집자의 선택

표시 관련 기사 Joomla 웹 사이트 - 인형

표시 관련 기사 Joomla 웹 사이트 - 인형

Joomla의 또 다른 멋진 모듈은 기사 - 관련 기사. 기사 - 관련 기사는 사이트 방문자가 보려고 선택한 기사와 관련된 기사를 표시하는 모듈입니다. 이 모듈은 현재 기사와 관련된 기사를 어떻게 알 수 있습니까? 그것은 메타 데이터에 입력 할 수있는 메타 데이터 키워드를 사용합니다 ...

Joomla의 저자, ​​편집자 및 발행인 계정 만들기 - 더미

Joomla의 저자, ​​편집자 및 발행인 계정 만들기 - 더미

Joomla는 세 가지 프런트 엔드 사용자, 백엔드 사용자 및 그 중간에있는 특수 클래스의 사용자 클래스가 있습니다. 이 클래스에는 3 개의 사용자 그룹이 있습니다. 작성자는 기사를 제출할 수 있습니다. 편집자는 새 기사를 제출하고 기존 기사를 편집 할 수 있습니다. 게시자는 새 기사를 제출하고 기존 기사를 편집하며 기사를 게시 할 수 있습니다. Joomla 사이트 작성자 작성 ...