【发布时间】:2021-05-31 00:24:22
【问题描述】:
我刚开始使用 python,目前正在尝试将多个 csv 文件作为数据帧导入。虽然有一些类似的问题,但它们似乎对我的问题没有帮助。 csv 文件具有相同的结构,并且名称不是我希望它们作为数据框导入时的名称。字典列表包含数据框的名称(它们应该如何)以及 csv 文件的名称。 由于我需要使用不同的文件夹多次执行此操作,因此我尝试创建一个公式:
def import_csv(CSVdict):
for index in range(len(CSVdict)):
CSVdict[index]["New_ID"]=pd.read_csv(("C:/path/"+str(CSVdict[index]["csvDatei"])+".csv"),sep=';',decimal=',')
我不确定我的错误在哪里,你能帮帮我吗? 字典列表如下所示:
[{'Nr': 0905', 'New_ID': '0905a', 'csvDatei': 'LG__380'}, {'Nr': '0905', 'New_ID': '0905b', 'csvDatei': 'LG__376'}, {'Nr': '0955', 'New_ID': '0955a', 'csvDatei': 'LG__53'}, {'Nr': '0955', 'New_ID': '0955b', 'csvDatei': 'LG__50'}]
稍后我需要 pd.concat() 在 Nr 中具有相同值的数据帧。所以带有New_ID =0955a 和NeW_ID=0955b 等的数据框需要合二为一。在此之前,他们必须进行调整。所以我无法读取文件并直接使用 pd.concat() 。
【问题讨论】:
-
您的预期输出是什么?数据框“名称”是什么意思(您的意思是字典键)?
-
我不想将
0905a=pd.read_csv("C:/path/LG__380.csv", sep=';', decimal=',')之类的文件一一导入,而是将它们一起导入,而是使用字典CSVdict['New_ID']中的值作为值“名称”。跨度> -
所以你想
pd.concat()他们都,new_id值从哪里来? -
我更改了描述以更好地解释这些 DataFrame 的目标。我希望这会有所帮助
标签: python pandas csv dictionary