Valueerror при фильтрации и добавлении нового столбца сразу - PullRequest
0 голосов
/ 02 мая 2019

Я получаю код ошибки: 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 со столбцами: Item No |Последний заказанный |Описание |Количество И я хочу иметь возможность добавлять другие столбцы из исходного набора данных, если понадобится позже.

1 Ответ

0 голосов
/ 03 мая 2019

Проблема в этой строке:

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

Правая часть назначения - это кадр данных, и вы пытаетесь разместить его внутри столбца.Вам нужно выбрать только один из столбцов.Что-то вроде

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

должно работать.

...