Как сохранить изменения, используя inplace in pandas? - PullRequest
0 голосов
/ 26 октября 2019

Если я удаляю столбец Entity, используя этот код:

t.drop('Entity', axis=1, inplace=True)

, то здесь снова появляется предыдущий кадр данных. Итак, как я могу сохранить изменения, используя inplace=True, чтобы я мог удалить Entity столбец?

enter image description here

Ответы [ 3 ]

1 голос
/ 26 октября 2019

Вы можете бросить оба за один раз.

rd.drop(["Entity", "Code"], axis=1, inplace=True)
0 голосов
/ 26 октября 2019

Ваш код t.drop('Entity', axis=1, inplace=True) правильный!

0 голосов
/ 26 октября 2019

Не ясно, что вы пытаетесь сбросить. Если вы используете axis=1, то вы пытаетесь удалить столбец ... в этом случае похоже, что ваш код работает нормально (я не вижу столбца Code в выходных данных DataFrame. )

Если вы пытаетесь отбросить строк на основе значения Entity, вам нужно использовать индекс df.loc, как в ...

`df.drop(df.loc[df['columnsname']=="Entity"].index, inplace=True)` 

или

`df.drop(df.loc[df['Entity']=="<some value>"].index, inplace=True)` 

Посмотрите на это в качестве примера ...

from dataframefromstring import DataFrameFromString

df = DataFrameFromString() # Just loads a df for this example. Nothing to do with your code

# show the starting dataframe    
print("=== Original DF ==============")
print(df)

# Drop the column "Name"
df.drop('Name', axis=1, inplace=True)
print("=== Dropped column ==============")
print(df)

# Drop multiple columns
df.drop(['Ticket_No', "Fare"], axis=1, inplace=True)
print("=== Dropped mutiple columns ==============")
print(df)

# Drop rows based on column X having some value
df.drop(df.loc[df['Sex']=="male"].index, inplace=True)
print("=== Drop row where Column = <something> ==============")
print(df)

# Drop rows based on multiple values value
df.drop(df.loc[ (df['Sex'].isnull() ) | (df["Age"] < 42 ) ].index, inplace=True)
print("=== Drop rows based on multiple conditions ==============")
print(df)

ВЫХОД:

=== Original DF ==============
      Name     Sex   Age Ticket_No    Fare
0   Braund    male  22.0   HN07681  2500.0
1      NaN  female  42.0   HN05681  6895.0
2    peter    male   NaN    KKSN55   800.0
3      NaN    male  56.0   HN07681  2500.0
4    Daisy  female  22.0   hf55s44     NaN
5   Manson     NaN  48.0   HN07681  8564.0
6   Piston    male   NaN   HN07681  5622.0
7  Racline  female  42.0   Nh55146     NaN
8      NaN    male  22.0   HN07681  4875.0
9      NaN     NaN   NaN       NaN     NaN

=== Dropped column ==============
      Sex   Age Ticket_No    Fare
0    male  22.0   HN07681  2500.0
1  female  42.0   HN05681  6895.0
2    male   NaN    KKSN55   800.0
3    male  56.0   HN07681  2500.0
4  female  22.0   hf55s44     NaN
5     NaN  48.0   HN07681  8564.0
6    male   NaN   HN07681  5622.0
7  female  42.0   Nh55146     NaN
8    male  22.0   HN07681  4875.0
9     NaN   NaN       NaN     NaN

=== Dropped mutiple columns ==============
      Sex   Age
0    male  22.0
1  female  42.0
2    male   NaN
3    male  56.0
4  female  22.0
5     NaN  48.0
6    male   NaN
7  female  42.0
8    male  22.0
9     NaN   NaN

=== Drop row where Column = <something> ==============
      Sex   Age
1  female  42.0
4  female  22.0
5     NaN  48.0
7  female  42.0
9     NaN   NaN

=== Drop rows based on multiple conditions ==============
      Sex   Age
1  female  42.0
7  female  42.0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...