나는 다음과 같은 형식으로 텍스트 파일이 : 나는 DataFrame에로드 할 read_csv를 사용할 때pandas.read_csv를 사용하여 csv 파일에서 데이터를로드 할 때 dtype을 지정하는 방법은 무엇입니까?
000423|东阿阿胶| 300|1|0.15000| |
000425|徐工机械| 600|1|0.15000| |
000503|海虹控股| 400|1|0.15000| |
000522|白云山A| |2| | 1982.080|
000527|美的电器| 900|1|0.15000| |
000528|柳 工| 300|1|0.15000| |
, 일부 열에 대한 올바른 DTYPE를 생성하지 않습니다. 예를 들어 첫 번째 열은 unicode str이 아닌 int로 파싱됩니다. 세 번째 열은 int가 아닌 unicode str으로 파싱됩니다. DataFrame의 dtype을 사전 설정하는 방법은 numpy.genfromtxt는 무엇입니까?
업데이트 : 나는 문제가 발생 이런 read_csv
사용 :
data = pandas.read_csv(StringIO(etf_info), sep='|', skiprows=14, index_col=0,
skip_footer=1, names=['ticker', 'name', 'vol', 'sign',
'ratio', 'cash', 'price'], encoding='gbk')
unicode()
및 제 numpy.genfromtxt
:
etf_info = unicode(urllib2.urlopen(etf_url).read(), 'gbk')
nd_data = np.genfromtxt(StringIO(etf_info), delimiter='|',
skiprows=14, skip_footer=1, dtype=ETF_DTYPE)
data = pandas.DataFrame(nd_data, index=nd_data['ticker'],
columns=['name', 'vol', 'sign',
'ratio', 'cash', 'price'])
read_csv
에 dtype
과 usecols
설정을 추가 할 수 있다면 좋을 것입니다. 내 탐욕 때문에 미안해.^_^
실제로 파일 판독기에 대한 작업이 더 필요합니다. 여기를 참조하십시오 : https://github.com/pydata/pandas/issues/926. 바라건대 마술 개발자가 목공예에서 나와 나를 도와 줄 수 있기를 바랍니다. –