我是编程新手。我有一些csv文件。我想做的是读取这些文件中的文本列,并使用google translate API将这些列翻译成西班牙语,然后将数据帧保存为新的csv文件。
我的代码是这样的:!pip install googletrans==4.0.0rc1
from numpy.ma.core import append
import googletrans
import pandas as pd
import numpy as np
from googletrans import Translator
translator = Translator()
df = pd.read_csv("file.csv")
sentences= df['text'].tolist()
result = []
text_es=[]
[result.append(translator.translate(sentence,dest='es')) for sentence in sentences]
for s in result:
text_es.append(s.text)
df['text_es'] = np.array(text_es)
df.to_csv('es_file.csv', index=False)
我不想上传每个文件并应用代码,而是想编写一个将代码应用于所有文件的代码。我该怎么做呢?
那么你要做的就是创建一个数组,其中包含所有csv文件的路径。
csv_paths = [Path1, Path2, Path3, Path4]
然后你需要遍历这个列表这很简单每个循环使用a,像这样:
for path in csv_paths:
现在你几乎可以做你之前做的事情,但是在循环中:
df = pd.read_csv(path)
sentences= df['text'].tolist()
result = []
text_es=[]
[result.append(translator.translate(sentence,dest='es')) for sentence in sentences]
for s in result:
text_es.append(s.text)
df['text_es'] = np.array(text_es)
df.to_csv('es_file.csv', index=False)
我希望这对你有帮助:)
可以使用以下命令列出文件夹中的所有文件:
os.listdir('My_Downloads/Music')
在这个列表上写一个循环。查看文档:查看此链接获取更多信息