循环用于从dataframe列索引创建csv

时间:2017-07-01 18:50:38

标签: python pandas dataframe export-to-csv

我想创建一个创建多个csv的循环,这些csv在开头有相同的9列但在最后一列中迭代地不同。

[col1,col2,col3,col4,...,col9,col[i]]

我有一个形状为(20000,209)的数据帧。 我想要的是我创建了一个循环,它不需要太多的计算能力和资源,但创建了200个csvs,它们在最后一列中有所不同。所有列都存在于一个数据框中。应添加的列位于列i = [10:-1]。

我想到了类似的东西:

for col in df.columns[10:-1]:
dfi = df[:9] 
dfi.concat(df[10])
dfi.dropna()
dfi.to_csv('dfi.csv'))

也许也可以使用

dfi.to_csv('dfi.csv', sequence = [:9,i])

我应该显示添加列的编号。知道如何轻松实现这一目标吗? :)

非常感谢!

1 个答案:

答案 0 :(得分:2)

我不确定我完全理解你想要的是什么,但是你是说每个csv应该只有10列,所有应该有前9个,然后是剩余的200个列中的每个csv一个?

如果是这样,我会选择一些简单的事情:

base_cols = list(range(9))

for i in range(9, 209):
    df.iloc[:, base_cols+[i]].to_csv('csv{}.csv'.format(i))

我认为哪个应该有用。