我想分割我的txt文件我有';'分成熊猫数据框。使用pd.series将csv拆分为多列
价格指数 - 欧洲货币
Date ;Blue-Chip;Blue-Chip;Broad ; Broad ;Ex UK ;Ex Euro Zone;Blue-Chip; Broad
; Europe ;Euro-Zone;Europe ;Euro-Zone; ; ; Nordic ; Nordic
; SX5P ; SX5E ;SXXP ;SXXE ; SXXF ; SXXA ; DK5F ; DKXF
31.12.1986;775.00 ; 900.82 ; 82.76 ; 98.58 ; 98.06 ; 69.06 ; 645.26 ; 65.56
01.01.1987;775.00 ; 900.82 ; 82.76 ; 98.58 ; 98.06 ; 69.06 ; 645.26 ; 65.56
02.01.1987;770.89 ; 891.78 ; 82.57 ; 97.80 ; 97.43 ; 69.37 ; 647.62 ; 65.81
05.01.1987;771.89 ; 898.33 ; 82.82 ; 98.60 ; 98.19 ; 69.16 ; 649.94 ; 65.82
06.01.1987;775.92 ; 902.32 ; 83.28 ; 99.19 ; 98.83 ; 69.50 ; 652.49 ; 66.06
07.01.1987;781.21 ; 899.15 ; 83.78 ; 98.96 ; 98.62 ; 70.59 ; 651.97 ; 66.20
08.01.1987;777.62 ; 887.37 ; 83.52 ; 97.87 ; 97.68 ; 71.01 ; 645.57 ; 65.62
09.01.1987;769.80 ; 868.31 ; 83.03 ; 96.31 ; 96.22 ; 71.40 ; 638.03 ; 65.14
12.01.1987;775.07 ; 879.41 ; 83.64 ; 97.54 ; 97.18 ; 71.50 ; 634.14 ; 65.03
13.01.1987;770.00 ; 872.74 ; 83.00 ; 96.78 ; 96.38 ; 70.97 ; 622.44 ; 63.87
14.01.1987;772.04 ; 876.39 ; 82.99 ; 97.14 ; 96.59 ; 70.66 ; 603.63 ; 62.46
15.01.1987;779.12 ; 884.37 ; 83.77 ; 98.10 ; 97.60 ; 71.28 ; 620.01 ; 63.89
16.01.1987;781.66 ; 883.78 ; 84.15 ; 98.11 ; 97.66 ; 71.95 ; 623.77 ; 64.65
完整的数据集可以从以下网址
https://www.stoxx.com/document/Indices/Current/HistoricalData/hbrbcpe.txt
检索我文件读入到使用下面的代码大熊猫。
data=pd.read_csv(txt,encoding='utf8')
我得到一个n乘1的数据框,现在我需要分隔列。我以为我可以放弃前三行将列分割为“;”然后再添加标题。我正在尝试使用以下功能。
data1=pd.Series.str.split(data,pat=';',expand=True)
和这个返回
TypeError: len() of unsized object
我试图N = 9应该有9列,但这返回相同的错误消息。
data1=pd.Series.str.split(data,pat=';',n=9, expand=True)
我也试过这个。
data1 = pd.read_csv(txt,index_col=0,parse_dates=True,sep";",dayfirst=True)
但这返回错误
EmptyDataError: No columns to parse from file
请不要张贴您的数据的图像;张贴我们实际上可以复制粘贴的东西... – blacksite
你得到了什么输出?你期望输出什么? – 2017-02-09 22:09:46