繁体   English   中英

Python:Pandas:将文本文件中DataFrames的索引另存为列

[英]Python: Pandas: Save Index of DataFrames in textfile as columns

我有一个DataFrames df_list的列表。 我想编写一个制表符分隔的文本文件:第一行是列表的索引。 然后,每一列都是DataFrame索引中的值。 index.values的长度不同。

0   1   2   3
i   i   i   i
n   n   n   .
d   d   .   .
e   .   .   .
x   .   .
.   .   
v
a
l
u
e
s

我试过了:

arrays = []
    for i in range(len(df_list)):
        arrays.append(df_list[i].index.values)
np.savetxt('clusters.txt', np.transpose(arrays))

但是我得到了: TypeError: Mismatch between array dtype ('object') and format specifier ('%.18e')

当我使用(piRSquared的答案)时:

df_master = pd.DataFrame({i: df.index.to_series() for i, df in enumerate(df_list)})
sorted_cols = df_master.notnull().sum().sort_values()[::-1].index
df_master[sorted_cols].to_csv('clusters.txt', sep='\t', index=None, float_format='%0.0f')

我得到例如:

  7     21

  D0EX67    



  E1MTY0    
  P00350    
        P00363
  P00370    


        P00452
        P00490

有办法摆脱空的细胞吗?

df_list = [pd.DataFrame(range(i)) for i in range(10, 15)]

df_master = pd.DataFrame({i: df.index.to_series() for i, df in enumerate(df_list)})
sorted_cols = df_master.notnull().sum().sort_values()[::-1].index

print df_master[sorted_cols].to_csv(sep='\t', index=None, float_format='%0.0f')

在此处输入图片说明

要保存到文件:

df_master.to_csv('mytextfile.txt', sep='\t')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM