Pandas DataFrame:ValueError:值的长度(13)与索引的长度(12)不匹配
Posted
技术标签:
【中文标题】Pandas DataFrame:ValueError:值的长度(13)与索引的长度(12)不匹配【英文标题】:Pandas DataFrame : ValueError: Length of values (13) does not match length of index (12) 【发布时间】:2021-11-15 15:14:52 【问题描述】:我试图从Pycharm
和Jupyter Notebook
运行以下代码。在 Jupyter 中,Pycharm 没有发生错误。有人可以帮忙解决这个问题吗?
下面是 news_collection.csv 的数据集可视化
created_at,文本 2021 年 5 月 13 日下午 3:27:55,“斯里兰卡队已为 2021 年世界杯做好充分准备” 2021 年 5 月 13 日下午 3:27:55,“他们肯定会想念 Lasith Malinga”
下面是给出上述错误的代码
import pandas as pd
def aggregated():
tweets = pd.read_csv(r'news_collection.csv')
df = pd.DataFrame(tweets, columns=['created_at', 'text'])
df['created_at'] = pd.to_datetime(df['created_at'])
df['text'] = df['text'].apply(lambda x: str(x))
pd.set_option('display.max_colwidth', 0)
df = df.groupby(pd.Grouper(key='created_at', freq='1D')).agg(lambda x: '
'.join(set(x)))
return df
if __name__ == '__main__':
print(aggregated())
aggregated().to_csv(r'preprocessed_tweets_aggregated.csv',index = True,
header=True)
【问题讨论】:
两者都有相同的pd.__version__
?
@LemonPy 是的,版本是一样的。是什么让它抛出这个特定的错误?
可能是您没有在同一个news_collection.csv
文件上运行?
不,是同一个文件
你在哪一行得到错误?
【参考方案1】:
引发错误的问题是由于 Pycharm 中的 pandas 包中的版本问题。我在 Jupyter 上使用 pandas 1.1.5 版本运行相同的代码,而在 Pycharm 中使用 pandas 1.3.0 运行,但无法正常工作。 因此,要在 Pycharm 中更改软件包版本,您可以按照以下步骤操作(在我的情况下,我必须将 pandas 版本降级到 1.1.5)
步骤 01 - 在 Pycharm 中转到您的项目并选择如下选项
步骤 02 - 然后你将直接到“Python解释器”选项卡 -> 选择你想要更改的包(在我的例子中是 Pandas) -> 双击版本 -> 选择指定版本复选框 -> 给出要升级或降级的版本 -> 选择安装包
【讨论】:
以上是关于Pandas DataFrame:ValueError:值的长度(13)与索引的长度(12)不匹配的主要内容,如果未能解决你的问题,请参考以下文章
pandas.DataFrame.loc好慢,怎么遍历访问DataFrame比较快
将 Pandas Multiindexed DataFrame 与 Singleindexed Pandas DataFrame 合并
pandas.DataFrame.loc好慢,怎么遍历访问DataFrame比较快