所以我有一个看起来像这样的csv文件..
1 a
2 b
3 c
我想让它看起来像这样..
1 2 3
a b c
我对如何使用python3感到茫然,任何人都有任何想法?真的很感激
答案 0 :(得分:1)
你是否正在阅读熊猫的csv?你可以随时使用numpy或pandas transpose
import numpy as np
ar1 = np.array([[1,2,3], ['a','b','c']])
ar2 = np.transpose(ar1)
Out[22]:
array([['1', 'a'],
['2', 'b'],
['3', 'c']],
dtype='<U11')
答案 1 :(得分:0)
正如其他人所说,pandas
和transpose()
是前往此的方式。这是一个例子:
import pandas as pd
input_filename = "path/to/file"
# I am using space as the sep because that is what you have shown in the example
# Also, you need header=None since your file doesn't have a header
df = pd.read_csv(input_filename ), header=None, sep="\s+") # read into dataframe
output_filename = "path/to/output"
df.transpose().to_csv(output_filename, index=False, header=False)
<强>解释强>:
read_csv()
将您文件的内容加载到我称为dataframe
的{{1}}中。这就是df
的样子:
df
您想要切换行和列,我们可以通过调用>>> print(df)
0 1
0 1 a
1 2 b
2 3 c
来实现。以下是转置后的transpose()
:
dataframe
现在使用>>> print(df.transpose())
0 1 2
0 1 2 3
1 a b c
方法将转置后的dataframe
写入文件。通过指定to_csv()
和index=False
,我们将避免编写标题行和索引列。