我有以下pandas数据帧:
import pandas as pd
df = pd.DataFrame(np.random.choice([0,1], (6,3)), columns=list('XYZ'))
X Y Z
0 1 0 1
1 1 1 0
2 0 0 0
3 0 1 1
4 0 1 1
5 1 1 1
让我们说我采取转置并希望保存它
df = df.T
0 1 2 3 4 5
X 1 1 0 0 0 1
Y 0 1 0 1 1 1
Z 1 0 0 1 1 1
所以,有三行。我想以这种格式保存它:
X 110001
Y 010111
Z 100111
我试过
df.to_csv("filename.txt", header=None, index=None, sep='')
但是,这会输出错误:
TypeError: "delimiter" must be an 1-character string
是否可以以这种方式保存数据框,或者是否有一些将所有列合并为一个?什么是最多"熊猫"溶液
答案 0 :(得分:1)
单独留下原始df
。不要转置。
df = pd.DataFrame(np.random.choice([0,1], (6,3)), columns=list('XYZ'))
df.astype(str).apply(''.join)
X 101100
Y 101001
Z 111110
dtype: object
答案 1 :(得分:1)
如果你想要转置,那么你可以这样做:
In [126]: df.T.apply(lambda row: ''.join(map(str, row)), axis=1)
Out[126]:
X 001111
Y 000000
Z 010010
dtype: object