【问题标题】:Losing values not only zeroes during read csv in Python Pandas?在 Python Pandas 中读取 csv 期间丢失的值不仅为零?
【发布时间】:2021-06-28 00:23:19
【问题描述】:

我在读取熊猫的数字时遇到了很大的问题。当我想读取 csv 时,下面的行在哪里:

001234
1245600
123140

所以一个...有时读取零,有时不读取...此外,有时其他值(例如 1,2,3)也未重新读取,我该怎么办?我尝试了许多类似下面的解决方案,但我仍然遇到这个问题:

1. pd.read_csv("df.csv", converters={"col": lambda x: str(x)})
2. pd.read_csv("df.csv", dtype={"col": str))

我能做些什么来停止丢失数字,而不仅仅是零??

【问题讨论】:

    标签: python pandas dataframe csv


    【解决方案1】:

    读入数据时需要将列指定为字符串。否则前导零被丢弃:

    正确:

    df = pd.read_csv(r'Desktop\test\test.csv', header=None, dtype={0:'str'})
    df
    Out[1]: 
             0
    0   001234
    1  1245600
    2   123140
    

    如果有多个列,并且您想将所有列导入为字符串,那么:

    df = pd.read_csv(r'Desktop\test\test.csv', header=None, dtype='str')
    df
    Out[1]: 
             0        1
    0   001234   001234
    1  1245600  1245600
    2   123140   123140
    

    不正确:

    df = pd.read_csv(r'Desktop\test\test.csv', header=None)
    df
    Out[2]: 
             0
    0     1234
    1  1245600
    2   123140
    

    【讨论】:

      猜你喜欢
      • 2023-03-24
      • 2021-12-08
      • 2022-01-21
      • 1970-01-01
      • 1970-01-01
      • 2013-06-28
      • 2018-06-01
      • 2021-06-01
      相关资源
      最近更新 更多