python - 如何确保将数据保存到 csv 时保留逗号?

标签 python python-3.x tensorflow

我在尝试学习机器学习时尝试预处理一些数据。现在我被困在我想要保存的数据中,我需要将逗号包含在保存的 csv 文件中。我将如何继续这样做

for x in X:
    for z in x:
        print(z)
        Z.append(z)
    V.append(Z)
    Z = []
    if i == 1:
        break
pd.DataFrame(V).to_csv("foo.csv")

最佳答案

如果您的数据值包含逗号,您有多种选择来存储它们:

  1. 使用 escapechar 转义它们。
for x in X:
    for z in x:
        print(z)
        Z.append(z)
    V.append(Z)
    Z = []
    if i == 1:
        break
pd.DataFrame(V).to_csv("foo.csv", escapechar='\')

加载相同文件时不要忘记使用它以避免混淆

df = pd.load_csv("foo.csv", escapechar='\')
  • 使用逗号以外的其他分隔符,例如制表符 \t 或竖线 |
  • for x in X:
        for z in x:
            print(z)
            Z.append(z)
        V.append(Z)
        Z = []
        if i == 1:
            break
    pd.DataFrame(V).to_csv("foo.csv", sep='\t')
    

    请引用documentation对于所有相关选项。

  • 此外,您不必使用 Pandas 来执行编写 CSV 文件这样的简单任务。您可以使用csv模块。示例来自tutorial 。该选项的代码比较复杂,但效率也更高。
  • ...
    with open('foo.csv', 'w') as f:
        writer = csv.writer(f)
        for row in V:
            writer.writerow(row)
    

    您可以注册自己的方言来使用自定义设置,例如:

    
    csv.register_dialect("hashes", delimiter="#")
    with open('foo.csv', 'w') as f:
        writer = csv.writer(f, dialect="hashes")
        for row in V:
            writer.writerow(row)
    

    关于python - 如何确保将数据保存到 csv 时保留逗号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60356336/

    相关文章:

    python - Apache日志文件数据分析与python pandas

    python - turtle 颜色不随变量和列表而改变

    Tensorflow,用 Dataset.from_generator 替换 feed_dict

    python - 模糊图像的特定部分

    python - 如何将 boolean 掩码存储为 Cython 类的属性?

    python - Numpy:为什么 numpy.array([2]).any() > 1 False?

    python-3.x - 将 python 项目中的 Azure Application Insights 日志记录从 OpenCensus 迁移到 OpenTelemetary

    python - Keras:致密层和激活层之间的形状不匹配

    python - Django : loaddata to update data

    python-3.x - 我如何从线程中的每个请求中获取新 ip?