Python 在列表中创建/导出数据帧到csv
我有4个DFsPython 在列表中创建/导出数据帧到csv,python,python-3.x,loops,list-comprehension,export-to-csv,Python,Python 3.x,Loops,List Comprehension,Export To Csv,我有4个DFs jeep_1 = jeep_data[jeep_data['Distance (km)'] < 5] jeep_2 = jeep_data[(jeep_data['Distance (km)'] >= 5) & (jeep_data['Distance (km)'] <= 10)] jeep_3 = jeep_data[(jeep_data['Distance (km)'] >= 11) & (jeep_data['Distance (km
jeep_1 = jeep_data[jeep_data['Distance (km)'] < 5]
jeep_2 = jeep_data[(jeep_data['Distance (km)'] >= 5) & (jeep_data['Distance (km)'] <= 10)]
jeep_3 = jeep_data[(jeep_data['Distance (km)'] >= 11) & (jeep_data['Distance (km)'] <= 20)]
jeep_4 = jeep_data[jeep_data['Distance (km)'] > 21]
该列表是数据帧的列表
我想用不同的文件名jeep_1.csv、jeep_2.csv等保存它们
如何访问数据帧名称jeep_2的最后一个元素,或者如何实现这一点
谢谢大家! 试试吧?
虽然可能不是最好的解决方案
str(my_list.index(item))
虽然这回答了您的问题,但我可能会以变量命名文件:
for item in my_list:
item.to_csv('/Users/jacob/Desktop/Jeepney PROJECT 2/' + item + '.csv')
如果您想更准确,可以导入操作系统,并使用
os.path.join(您的\u dir,file\u name,.csv”)
我在循环之外尝试了它,但它返回以下信息:“如果我不使用括号和项:[my\u list.index for item in my\u list]-此retrun内置方法是否将项传递到括号中?谢谢!根据您编辑的答案,“+item”应该是字符串,对吗?但是我的列表中的项目是数据帧。我该怎么做@安娜·塞梅n@AnnaSemj或者更好的是,使用pathlib
,它的API比os.path
好得多(我在所有新项目中都使用它,并且经常会花时间重构旧的os.path
代码以使用pathlib
)是的,使用pathlib可能更好,这取决于你想用它做什么。。。实际上,我刚刚考虑过这个问题,很难将变量名恢复为字符串。。。我的意思是,您可以虚拟强制它,并为这四个帧分配一个名称变量,比如jeep_1.name='jeep_1'等等,然后在函数中使用item.name。。。老实说,我得考虑一下如何将实际变量名检索为字符串。。。列表索引仍然不起作用吗?您不应该在这里使用列表理解,因为它会产生副作用。您可以使用列表理解来制作列表。
for item in my_list:
item.to_csv('/Users/jacob/Desktop/Jeepney PROJECT 2/' + item + '.csv')