панды: извлечение определенных выбранных столбцов из фрейма данных в новый фрейм данных [дубликат]



этот вопрос уже есть ответ здесь:



У меня есть фрейм данных pandas с 4 столбцами, и я хочу создать новая таблицы данных, что только имеет три колонки. Этот вопрос похож на: извлечение конкретные столбцы из фрейма данных но для панд не R. следующий код не работает, вызывает ошибку и, конечно же, не является панд-способом сделать это.



import pandas as pd
old = pd.DataFrame({'A' : [4,5], 'B' : [10,20], 'C' : [100,50], 'D' : [-30,-50]})
new = pd.DataFrame(zip(old.A, old.C, old.D)) # raises TypeError: data argument can't be an iterator


что такое панд способ сделать это?

549   1  

1 ответ:

есть способ сделать это, и это на самом деле похоже на R

new = old[['A', 'C', 'D']].copy()

здесь вы просто выбираете нужные столбцы из исходного фрейма данных и создаете для них переменную. Если вы хотите изменить новый фрейм данных вообще, вы, вероятно, захотите использовать .copy() избежать SettingWithCopyWarning.

альтернативный метод заключается в использовании filter который создаст копию по умолчанию:

new = old.filter(['A','B','D'], axis=1)

наконец, в зависимости от количества столбцов в оригинальный фрейм данных, это может быть более кратким, чтобы выразить это с помощью drop (это также создаст копию по умолчанию):

new = old.drop('B', axis=1)

Comments

    Ничего не найдено.