如何循环遍历python数据集?

kaymankayman 成员职位:662独角兽
2018年11月编辑 帮助

你好,我有点卡在如何使用熊猫数据集时运行一些python脚本。

基本的想法是使用一些python脚本,让我检查一个例子是用什么语言写的。我有记录集,其中包含的标题字段和其他一些字段,在各种语言。我使用python来检查标题是哪种语言,过滤英语并忽略其他语言。

下面是我使用的(简化)代码:

进口熊猫

进口的翻译

cl = translator.check_language

def rm_main(数据)

t =数据(“my_title_field”)

试一试:

l = cl (t)

除了:

通过

l =“定义”

数据[' detected_lang '] = l

返回数据

如果我将数据集过滤为单行,这将非常好,但如果我发送多行,它们都被分配相同的语言。这意味着我需要遍历数据,但我没能成功。我用了几种方法(包括下面),但总是得到一个无意义的解析错误,所以我有点卡住了。遍历熊猫数据集、将更改应用于每行,然后返回该数据集的正确方法是什么?

这不起作用:

def rm_main(数据):
langs = []

对于data.iterrows()中的行:
试一试:
Rl = msc.detect_lang(row["title_field"])
除了:
通过
Rl = "未定义"

langs.append (rl)

数据(“语言”)=语言
返回数据

任何建议吗?

最佳答案

  • kaymankayman 成员职位:662独角兽
    解决方案接受

    没关系,我愚蠢地忘记了添加索引,所以它无法工作。

    如果有人想做同样的事情,这个脚本可以工作:

    def rm_main(数据):
    langs = []

    对于索引,在data.iterrows()中的行:
    s =行(“my_check_field”)
    试一试:
    做点聪明的事
    除了:
    通过
    Rl = "未定义"
    langs.append (rl)

    数据(“语言”)=语言
    返回数据

    Thomas_Ott
    登录注册置评。