2017-12-24 11 views
1

저는 파이썬 3을 배우고 있습니다.좋은 방법으로 데이터를 인쇄하는 방법

나는 sklearn에서 가져온 데이터 세트를 가져 왔습니다. 인쇄 할 때 이상하게 보입니다. 데이터가 명확하게 정리 된 것을 보려면 어떤 명령을 사용해야합니까 : 열, 행.

import statsmodels.api as sm 
from sklearn import datasets 
data = datasets.load_boston() 
print(data) 

enter image description here

답변

2

첫째, 당신은 official documentation에 따라 사용자가 만든 객체 데이터는 이러한 특성을 가지고 있음을 이해해야합니다

  • data['data']len() 506 배열입니다. 각 요소에는 13 개의 다른 요소가 있으므로 len(data['data'][1])은 실제로 13을 반환합니다.
  • 여기서 "열 이름"으로 data['feature_names']을 볼 수 있습니다.이 요소에는 13 개의 문자열 요소가 있습니다.

자, 정보와 함께, 당신은 당신이 data['feature_names']와 헤더를 인쇄 data['data'] 내부의 열을 인쇄 할 수있는 테이블을 인쇄하는 것을 이해할 수있다.

이 을 잡고 있으면 테이블 모듈을 사용하여 멋지게 인쇄 할 수 있습니다.

무엇 '로드 및 데이터 세트 보스턴 집 가격을 반환은'서 내가 잘못된 방식으로 데이터를 해석하면, 내가 이해하지
CRIM  ZN INDUS CHAS  NOX  RM AGE  DIS RAD TAX PTRATIO  B LSTAT 
0.00632 18  2.31  0 0.538 6.575 65.2 4.09  1 296  15.3 396.9  4.98 
0.02731 0  7.07  0 0.469 6.421 78.9 4.9671  2 242  17.8 396.9  9.14 
0.02729 0  7.07  0 0.469 7.185 61.1 4.9671  2 242  17.8 392.83  4.03 
0.03237 0  2.18  0 0.458 6.998 45.8 6.0622  3 222  18.7 394.63  2.94 

죄송합니다 :

from tabulate import tabulate 
print tabulate(data['data'], headers=data['feature_names']) 

는 결과입니다 그러나 이것은 표 형식으로 데이터를 인쇄하는 데 도움이됩니다.

2

는 팬더 예뻐 인쇄를 갖는다. 이 시도 :

import pandas as pd 
df = pd.DataFrame(data['data']) 
print(df) 
1
for row in data: 
    print("{: >20} {: >20} {: >20}".format(*row)) 

이 세 가지 열이있는 레이아웃을 생성합니다.