csv文件一共32行,想使用pandas把每一行数据写入一个单独csv文件,32行变成32个csv文件,使用了以下代码,结果储存的每一个csv文件都包含了全部行的数据,头大了。
import pandas as pd
file = pd.read_csv('data.csv',header=None)
df = pd.DataFrame(file)
for i in range(32):
df.iloc[[i],]
df.to_csv('data{}.csv'.format(i), index=False)
帮你改了一下,不会受原文件行数限制
import pandas as pd
df = pd.read_csv('data.csv')
i = 1
for v in df.values:
newdf = pd.DataFrame(columns=df.columns)
newdf.loc[0] = v
newdf.to_csv(f'data{str(i)}.csv',index=None)
i+=1
import pandas as pd
file = pd.read_csv('data.csv',header=0)
df = pd.DataFrame(file)
for i in range(32):
df2 = df.iloc[[i],]
df2.to_csv('data{}.csv'.format(i), index=False)
def aname(data):
#保存代码
pass
#遍历df的每一行作为参数并调用aname函数
df.apply(aname,axis=1)
变量不对,不能直接用df,增加一个中间变量
import pandas as pd
file = pd.read_csv(r'c:\data.csv', header=None)
df = pd.DataFrame(file)
for i in range(32):
item = df.iloc[[i], ]
item.to_csv(r'c:\data{}.csv'.format(i), index=False)