读取 csv 文件并在 python 中返回数据帧时出错

Posted

技术标签:

【中文标题】读取 csv 文件并在 python 中返回数据帧时出错【英文标题】:Error while reading csv file and returning dataframe in python 【发布时间】:2018-10-21 17:31:32 【问题描述】:

我下面的代码不起作用。有没有更好的按列过滤的方法?

import pandas as pd     # To handle data

file=pd.read_csv("C:\\Users\\Ankit\\Downloads\\file.csv",index_col=0)

df = pd.DataFrame(data=[tweet.text for tweet in file], columns=['tweet'])
print(df)

【问题讨论】:

实际错误是什么?如果我们不知道哪里出了问题,就很难找出问题所在。 我们是否应该通过互联网进行火神思维融合来猜测错误?请编辑您的问题并包含错误和原始数据 另外,为什么要阅读整个 df,然后只在 tweet 列中创建一个新的 df?您可以阅读推文专栏:df = pd.read_csv("C:\\Users\\Ankit\\Downloads\\file.csv",usecols=['text'], index_col=0) 【参考方案1】:

file 已经是一个数据框。要过滤特定列,您无需创建新数据框并从 file 中提取数据。

相反,您可以简单地使用现有的pd.DataFrame 对象并使用标准的[] 索引。假设您有一个这样命名的“tweet”列:

file = pd.read_csv("C:\\Users\\Ankit\\Downloads\\file.csv", index_col=0)
file_tweet = file[['tweet']]

或者,如果您需要一列,请在阅读文件时指定:

file = pd.read_csv("C:\\Users\\Ankit\\Downloads\\file.csv",
                   index_col=0, use_cols=['tweet'])

【讨论】:

【参考方案2】:

只需这样做,

import pandas as pd
dataframe = pd.read_csv('C:\\Users\\Ankit\\Downloads\\file.csv')

pd.read_csv 将读取 csv 文件并在数据帧中返回。

【讨论】:

好的,你可以通过dataframe = file[['columns_name']]看到每一列

以上是关于读取 csv 文件并在 python 中返回数据帧时出错的主要内容,如果未能解决你的问题,请参考以下文章

从多个文件中读取大数据并在python中聚合数据的最快方法是啥?

转换为 csv 文件后读取数据帧会在 Scala 中呈现不正确的数据帧

如何使用 Python 在 myBucket 中上传 CSV 文件并在 S3 AWS 中读取文件

从单个csv文件中读取两个完整的不同数据帧

读取 zip 中的所有 csv 文件,并将相应的 csv 文件名作为数据帧变量名

如何将从 csv 文件中读取的数据帧打印成字典格式?