根据 csv 文件值重命名文件 - Python

索拉克

我有一个 CSV 文件,其中有一个名为“id”的列,我有一个包含文件的目录。我想根据“id”列下方单元格中的值重命名这些文件。

我有以下代码:

import pandas as pd

import os

path = os.chdir('/Users/Utilizador/pythonProjects/files')

df = pd.read_csv('/Users/Utilizador/pythonProjects/todos-cantar-palavras.csv', encoding='utf8')

i = 0

for file in os.listdir(path):
    new_file_name = df['id']
    os.rename(file, new_file_name)
   
    i = i + 1

它返回以下错误:

类型错误:重命名:dst 应该是字符串、字节或 os.PathLike,而不是系列

我想这应该很容易,但因为我给出了第一步,所有的帮助都将不胜感激。

谢谢!

卡皮尔博物馆

而不是 df['id'] 你需要写 df['id'].iloc[i] 因为 df['id'] 会给你一系列值,即整个列而不是单个值,这就是你得到错误的原因

import pandas as pd

import os

path = os.chdir('/Users/Utilizador/pythonProjects/files')

df = pd.read_csv('/Users/Utilizador/pythonProjects/todos-cantar-palavras.csv', encoding='utf8')

i = 0

for file in os.listdir(path):
    new_file_name = df['id'].iloc[i]
    os.rename(path+'/'+file, path+'/'+new_file_name)
   
    i = i + 1

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章