如何转置 csv 文件中的数据集?
例如,我想将: 转换
Name,Time,Score
Dan,68,20
Suse,42,40
Tracy,50,38
为:
Name,Dan,Suse,Tracy
Time,68,42,50
Score,20,40,38
编辑: 原始问题错误地使用了术语“转置”。
For example, i would like to transform:
Name,Time,Score
Dan,68,20
Suse,42,40
Tracy,50,38
Into:
Name,Dan,Suse,Tracy
Time,68,42,50
Score,20,40,38
Edit: The original question used the term "transpose" incorrectly.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
如果整个文件内容适合内存,您可以使用
您基本上可以将
zip()
和izip()
视为转置操作:izip() 避免立即复制数据,但基本上会做同样的事情。
If the whole file contents fits into memory, you can use
You can basically think of
zip()
andizip()
as transpose operations:izip()
avoids the immediate copying of the data, but will basically do the same.从
input.csv
传输到output.csv
。熊猫也能提供帮助。Transfer from
input.csv
tooutput.csv
. Pandas can also help.nosklo 的答案相同(全部归功于他),但对于 python3:
Same answer of nosklo (all credits to him), but for python3:
如果
lines
是原始文本列表,而不是应有的形式,或者使用
csv
Python 模块 - http://docs.python.org/library/csv.htmlIf
lines
is the list of your original text than it should beor use
csv
Python module - http://docs.python.org/library/csv.html最简单的方法是:
结果:
The simplest way is:
Result:
将 CSV 读入
pandas
数据框,pandas 内置了转置函数,可以按如下方式调用。Read the CSV into
pandas
data frame, pandas has build in function for transpose which can be invoked as below.