Сообщение об ошибке при умножении двух столбцов вместе

1

Попытка создать новый столбец для моего набора данных с использованием pandas, который является продуктом двух столбцов, умноженных вместе. Один набор - это значение в долларах, называемое ценой, а другое - числом, называемым установками. Запуск кода умножения сам по себе дает мне ошибку 'не может умножить последовательность на non-int типа' str ''

Я попробовал запустить следующий код, чтобы преобразовать строки в целые числа.

    pd.to_numeric(appdata['Installs'], errors ='ignore')
    pd.to_numeric(appdata['Price'], errors= 'ignore')
    appdata[Income]= appdata['Installs'] * appdata[('Price')]

Но это дает мне ту же ошибку.

Изображение 174551

Каким другим способом я мог бы преобразовать свои данные в целочисленный формат?

Изображение 174551

Заранее спасибо.

  • 1
    Почему у вас есть () вокруг «Цена»? Также, пожалуйста, публикуйте ошибки / код в самом вопросе вместо ссылок на внешние изображения.
  • 0
    Есть ли в ваших данных литерал + как часть данных для Installs ? Если так, то ваша проблема, вероятно, в том, что pandas не может преобразовать это в числовой тип.
Показать ещё 2 комментария
Теги:
pandas

2 ответа

1

pd.to_numeric() не редактирует столбец на месте. Ты должен сделать:

appdata['Installs'] = pd.to_numeric(appdata['Installs'], errors ='ignore')
appdata['Price'] = pd.to_numeric(appdata['Price'], errors= 'ignore')
appdata['Income']= appdata['Installs'] * appdata['Price']
1
# remove , and + from 'Installs' to make the cells look integer to Pandas
appdata['Installs'] = pd.to_numeric(appdata['Installs'].str.replace(r'[\,\+]+', '', regex=True))
# remove , from 'Price' to make the cells look integer to Pandas
appdata['Price'] = pd.to_numeric(appdata['Price'].str.replace(r'[\,]+', '', regex=True))
# calculate "Income"
appdata['Income'] = appdata['Installs'] * appdata['Price']

Ещё вопросы

Сообщество Overcoder
Наверх
Меню