一次过滤和添加新列时出现 Valueerror

Valueerror when filtering and adding a new column at once

我收到错误代码: ValueError:传递的项目数错误 3,放置意味着 1。

我想要做的是导入一个数据集并计算重复值,删除重复值并添加一个列,表示该数字有 x 个重复项。

这是为了尝试对 13 000 行和 45 列的数据集进行排序。 我尝试了在网上找到的不同解决方案,但似乎没有帮助。我是编程新手,非常感谢所有帮助

'''import pandas as pd
# Making file ready
data = pd.read_excel(r'Some file.xlsx', header = 0)

data.rename(columns={'Dato': 'Last ordered', 'ArtNr': 'Item No:'}, inplace 
= True)

#Formatting dates
pd.to_datetime(data['Last ordered'],
    format = '%Y-%m-%d %H:%M:%S')

#Creates new table content and order
df = data[['Item No:','Last ordered', 'Description']]

df['Last ordered'] = df['Last ordered'].dt.strftime('%Y-/%m-/%d')
df = df.sort_values('Last ordered', ascending = False)

#Adds total sold quantity column
df['Quantity'] = df.groupby('Item No:').transform('count')

df2 = df.drop_duplicates('Item No:').reset_index(drop=True)

#Prints to environment and creates new excel file
print(df2)
df2.to_excel(r'New Sorted File.xlsx')'''

我希望它提供一个包含以下列的新 excel 文件: 货号 |最后订购 |说明 |数量 如果以后需要,我也希望能够从原始数据集中添加其他列。

问题出在这一行:

df['Quantity'] = df.groupby('Item No:').transform('count')

作业的右侧部分是一个数据框,您正试图将其放入列中。您只需要 select 其中一列。像

df['Quantity'] = df.groupby('Item No:').transform('count')['Description']

应该可以。