Я читаю некоторые .csv
файлы из папки.Я пытаюсь создать список фреймов данных с использованием каждого файла.
В некоторых файлах значения столбцов, например Quantity
, имеют типы данных str
и float64
.Поэтому я пытаюсь преобразовать этот столбец quantity
в int
.
Я получаю доступ к своим столбцам, используя их позицию / индекс (для целей автоматизации).
Из всех фреймов данных из списка, это один из них,
CustName ProductID Quantity
0 56MED 110 '1215.0'
1 56MED 112 5003.0
2 56MED 114 '6822.0'
3 WillSup 2285 5645.0
4 WillSup 5622 6523.0
5 HammSup 9522 1254.0
6 HammSup 6954 5642.0
Поэтому у меня выглядит вот так:
df.columns[2] = pd.to_numeric(df.columns[2], errors='coerce').astype(str).astype(np.int64)
Я получаю,
TypeError: Index не поддерживает изменяемые операции
До этого я пытался,
df.columns[2] = pd.to_numeric(df.columns[2], errors='coerce').fillna(0).astype(str).astype(np.int64)
Однако я получил эту ошибку,
AttributeError: у объекта 'numpy.float64' нет атрибута 'fillna'
Есть сообщения, в которых используются имена столбцов напрямую, но не положение столбцов.Как я могу преобразовать мой столбец в int
, используя позицию / индекс столбца в pnadas
?
My pandas
version
print(pd.__version__)
>> 0.23.3