python数据集保存为csv文件 can only concatenate str (not “list“) to str

当我们使用pandas 包进行csv文件保存时,出现报错TypeError: can only concatenate str (not "list") to str,由于在保存文件时,我使用了多个变量进行文件名字和保存路径的赋值

原代码为

name=['100','1000','10000','100000','1000000']
for i in name:
    start_memory = psutil.Process().memory_info().rss
    train_name='data_' +i
    test_name='data_' +i
    trainfile_path ="/a/time/"
    result_path="intersection/time/"
    train_main(testfile_path,i,train_name,test_name,result_path) 
    end_memory = psutil.Process().memory_info().rss
    memory_usage = end_memory - start_memory
    memory_usage_mb = memory_usage / 1024 
    memory_usage_mb.to_csv(result_path +name+'time_memory'+ '.csv')

分析上面的代码, memory_usage_mb.to_csv(result_path +name+'time_memory'+ '.csv')在每一次循环中,name是list中的一个数值,而在循环外name 是一个包含多个字符串的列表,如果想要将它们连接起来,使用str(name), 需要先将name中的数值变为字符串

修改最后保存csv文件的代码为:

memory_usage_mb.to_csv(result_path +str(name)+'time_memory'+ '.csv')

在使用.to_csv保存文件时的注意事项 :

1.最后文件需要添加适当的文件扩展名(如.csv),

2.行索引和列标签:可以选择是否保存行索引和列标签。使用index参数来控制是否保存行索引,使用header参数来控制是否保存列标签。

3.文件路径:确保为保存的文件指定正确的路径。可以使用绝对路径或相对路径,在指定相对路径时,确保当前工作目录正确。

4.分隔符:.to_csv方法默认使用逗号作为字段之间的分隔符,可以通过sep参数进行自定义。另外,还可以设置delimiter参数来指定字段内部的分隔符,如将字段值用引号括起来。