CSV文件转储到python中的yaml文件

gospecomid12

我正在尝试将 .csv 文件转储到 .yml 文件中并成功。唯一的问题是 .yml 文件中的语法不是我想要的。

我的 .csv 文件:

NAME,KEYWORDS
Adam,Football Hockey

我在哪里读取 .csv 文件并将其转储到 .yml 文件中:

import csv
import pandas
import yaml

""" Reading whole csv file with panda library """
df = pandas.read_csv('keywords.csv')


""" Dump DataFrame into getData.yml as yaml code """
with open('getData.yml', 'w') as outfile:
    yaml.dump(
        df.to_dict(orient='records'),
        outfile,
        sort_keys=False,
        width=72, 
        indent=4
    )

.yml 输出的样子:

-   NAME: Adam
    KEYWORDS: Football Hockey

我希望它看起来如何:

-   NAME: Adam
    KEYWORDS: Football, Hockey

我想在足球和曲棍球之间加一个逗号。但是如果我把它放在 .csv 文件中,它看起来会很奇怪,因为所有内容从一开始就用逗号分隔。我怎样才能做到这一点?

隆皮

为此,您有 2 个选择:

在 CSV 文件中,如果逗号在引号内,则在解析过程中不会将其视为分隔符。这样,您的 CSV 文件将如下所示:

NAME,KEYWORDS
Adam,"Football, Hockey"

或者,您可以在阅读后处理 KEYWORDS 列。这会将以下内容添加到您的代码中:

df = pandas.read_csv('keywords.csv')
df["KEYWORDS"] = df["KEYWORDS"].apply(lambda x: ", ".join(x.split()))

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章