我使用pandas将csv文件导入python,但是数据框只在一列中。我从The Player Standing Field table at this link (second one)中复制并粘贴了逗号分隔格式的数据到excel文件中,并将其保存为csv(最初为ms-dos,然后按照AllthingsGo42的建议,同时以normal和utf-8格式保存)。但它只返回一个单列数据帧。在
我尝试过的例子:
dataset=pd.read('MLB2016PlayerStats2.csv')
dataset=pd.read('MLB2016PlayerStats2.csv', delimiter=',')
dataset=pd.read_csv('MLB2016PlayerStats2.csv',encoding='ISO-8859-9',
delimiter=',')
上面的每一行代码都返回:
Rk、姓名、年龄、Tm、Lg、G、GS、CG、Inn、Ch、PO、A、E、DP、Fld%、Rtot、Rtot/年、Rdrs、Rdrs/年、RF/9、RF/G、Pos汇总
1,费尔南多·阿巴德(Fernando Abad)\abadfe01,30,总计,AL,57,0,0,46.2…
2,Jose Abreu\abreujo02,29,阿拉巴马州CHW,152152150,1…
3,A.J.Achter\achteaj01,27,LAA,AL,27,0,0,37.2,…
4,达斯汀·阿克利\ackledu01,28,纽约,阿拉巴马州,23,16,10,1…
5,克里斯蒂安·阿达姆斯\阿达梅克01,24,列,荷兰,69,43,3。。。在
也尝试过:
^{pr2}$它返回:
"Rk Name Age Tm Lg G GS CG Inn Ch
\
0 "1 Fernando Abad\abadfe01 30 TOT AL 57 0 0 46.2 4
1 "2 Jose Abreu\abreujo02 29 CHW AL 152 152 150 1355.2 1337
2 "3 A.J. Achter\achteaj01 27 LAA AL 27 0 0 37.2 6
3 "4 Dustin Ackley\ackledu01 28 NYY AL 23 16 10 140.1 97
4 "5 Cristhian Adames\adamecr01 24 COL NL 69 43 38 415.0 212
E DP Fld% Rtot Rtot/yr Rdrs Rdrs/yr RF/9 RF/G \
0 ... 0 1 1.000 NaN NaN NaN NaN 0.77 0.07
1 ... 10 131 0.993 -2.0 -2.0 -5.0 -4.0 8.81 8.73
2 ... 0 0 1.000 NaN NaN 0.0 0.0 1.43 0.22
3 ... 0 8 1.000 1.0 9.0 3.0 27.0 6.22 4.22
4 ... 6 24 0.972 -4.0 -12.0 1.0 3.0 4.47 2.99
Pos Summary"
0 P"
1 1B"
2 P"
3 1B-OF-2B"
4 SS-2B-3B"
下面是记事本++中的数据
"Rk,Name,Age,Tm,Lg,G,GS,CG,Inn,Ch,PO,A,E,DP,Fld%,Rtot,Rtot/yr,Rdrs,Rdrs/yr,RF/9,RF/G,Pos Summary"
"1,Fernando Abad\abadfe01,30,TOT,AL,57,0,0,46.2,4,0,4,0,1,1.000,,,,,0.77,0.07,P"
"2,Jose Abreu\abreujo02,29,CHW,AL,152,152,150,1355.2,1337,1243,84,10,131,.993,-2,-2,-5,-4,8.81,8.73,1B"
"3,A.J. Achter\achteaj01,27,LAA,AL,27,0,0,37.2,6,2,4,0,0,1.000,,,0,0,1.43,0.22,P"
"4,Dustin Ackley\ackledu01,28,NYY,AL,23,16,10,140.1,97,89,8,0,8,1.000,1,9,3,27,6.22,4.22,1B-OF-2B"
"5,Cristhian Adames\adamecr01,24,COL,NL,69,43,38,415.0,212,68,138,6,24,.972,-4,-12,1,3,4.47,2.99,SS-2B-3B"
"6,Austin Adams\adamsau01,29,CLE,AL,19,0,0,18.1,1,0,0,1,0,.000,,,0,0,0.00,0.00,P"
很抱歉我之前的问题有点混乱。我希望这次编辑能把事情弄清楚。感谢到目前为止回答的人。在
不需要为csv调用分隔符。您只需将分隔符从“;”改为“,”。为此,您可以用记事本打开csv文件,并使用替换工具更改它们。在
我自己运行得很快,我能够得到我所理解的是期望的输出。在
我唯一的想法是,没有必要为csv调用分隔符,因为csv是一个逗号分隔的变量文件,但这并不重要。我认为你的实际数据文件有一些不正确的地方,我会去确保它保存正确。我会重复前面的评论,并确保csv是UTF-8,而不是MS-DOS或Macintosh(在excel中保存时这两个选项都可以)
祝你好运!在
相关问题 更多 >
编程相关推荐