我有一个后处理CSV文件。我的文件示例:
serial_number1, name_number_ID1, price1, state1
serial_number2, name_number_ID1, price2, state2
serial_number3, name_number_ID2, price1, state3
serial_number4, name_number_ID3, price1, state4
...
所以我有一个重复的名字列。在另一个文件中,sample name有一个别名,该文件如下所示:
NAME_NUMBER_ID; Alias; Data; NrOfOfert
name_number_ID1; Name1; XX; YY
name_number_ID2; Name2; XX; YY
name_number_ID3; Name3; XX; YY
现在我需要从第二个文件更改Alias上第一个文件中的NameID。你知道吗
结果文件将是:
serial_number1, Name1, price1, state1
serial_number2, Name1, price2, state2
serial_number3, Name2, price1, state3
serial_number4, Name3, price1, state4
...
读取第一个文件(数百条记录)并将nameID替换为正确的别名的最佳方法是什么?我应该编一本字典吗?有时我的别名太多,无法手动完成。你知道吗
有人能给我找到最理想的解决方案吗?你知道吗
编辑:我刚从第二个文件创建了一个字典,并使用它:
def.replace({def.iloc[:,1]:dictionary})
谢谢你的回答,我学到了很多。你知道吗
我建议使用pandas和导入read\u csv。只导入所需的列,然后合并数据帧。你知道吗
如果您还没有准备好使用pandas来实现这一点,您可以让python逐行替换。熊猫就是为这个而生的,所以它是更好的选择。你知道吗
这个例子应该可以启动更改,但是需要一些更改才能实际工作。你知道吗
如果您使用这段代码,请注意行号是否匹配(这样头就不会碍事,并且一个文件中的行不会比另一个文件多,从而迫使程序提前结束)。这种实现通过逐行写入更正的部分来避免程序存储整个列或文件。祝你好运!你知道吗
相关问题 更多 >
编程相关推荐