为啥熊猫转换后在csv文件的开头添加数字[重复]

Posted

技术标签:

【中文标题】为啥熊猫转换后在csv文件的开头添加数字[重复]【英文标题】:Why does Pandas add numbers at beginning of csv-file after converting [duplicate]为什么熊猫转换后在csv文件的开头添加数字[重复] 【发布时间】:2019-10-24 04:55:48 【问题描述】:

我是一名 Python 初学者,目前正在尝试删除 csv 中的一些列 - 效果很好!但是:当我使用熊猫时,它会在文件的开头自动添加另一列并添加行号。我怎样才能避免这种情况?

输入数据如下(json):

    [
      
        "source": "twitter",
        "cashtag": "$FB",
        "sentiment score": "0.366",
        "id": "719659409228451840",
        "spans": [
          "watching for bounce tomorrow"
    ]
  , ... ]

转换为 csv 效果很好。 我这样做的代码:

import pandas as pd

# Convert son to csv
pd.read_json("test.json").to_csv("test.csv")

# Delete cashtag, id, source column
data = pd.read_csv("test.csv")
data = data.drop(["cashtag", "id", "source"], axis=1)
data.to_csv("test_cleaned.csv")
data.head()

输出:

Unnamed: 0  sentiment score spans
0   0   0.366   ['watching for bounce tomorrow']
1   1   0.638   ['record number of passengers served in 2015']
2   2   -0.494  ['out $NFLX -.35']
3   3   0.460   ['Looking for a strong bounce', 'Lunchtime 
4   4   0.403   ['Very intrigued with the technology and 

我想拥有什么:

sentiment score spans
    0.366   ['watching for bounce tomorrow']
    0.638   ['record number of passengers served in 2015']
    -0.494  ['out $NFLX -.35']
    0.460   ['Looking for a strong bounce', 'Lunchtime 
    0.403   ['Very intrigued with the technology and 

所以转换和删除效果很好,但是对于使用 pandas 的每个操作,它都会在文件的开头添加另一列。在此示例中,转换为 csv 后的 1 列和删除列后的 1 列。我怎样才能避免这种情况?

【问题讨论】:

熊猫在线文档是一个很好的资源。当试图弄清楚一个函数是如何工作的时,这是一个很好的起点。 【参考方案1】:

这叫索引,你可以通过下面的方式来防止它被写入

df.to_csv(‘FileMaker.csv’, index=False)

【讨论】:

【参考方案2】:

您所指的列是索引。在保存 csv 时尝试这样做:

data.to_csv("test_cleaned.csv", index=False)

Pandas 会自动为您初始化的每个 Dataframe 创建一个索引,除非您明确执行此操作。我强烈建议阅读panda's documentation 以获取更多信息。

【讨论】:

以上是关于为啥熊猫转换后在csv文件的开头添加数字[重复]的主要内容,如果未能解决你的问题,请参考以下文章

使用熊猫循环合并大量csv文件[重复]

PySpark:读取 pyspark 框架中的 csv 数据。为啥它在框架中显示特殊字符?除了使用熊猫之外,以表格形式显示的任何方式[重复]

为啥熊猫在写入 csv 时会删除前导零?

读取存储在文本文件中的字典并转换为熊猫数据框[重复]

Python3 - 使用熊猫将 csv 转换为 json

对 .csv 文件中具有相同“年份”的数字求和 [重复]