一、dataframe刪除一列
當我們需要刪除dataframe中的一個或多個列或者行時,可以通過drop()方法實現。對於dataframe刪除一列的情況,需要指定列名和axis參數,axis默認為0,代表刪除行,在這裡修改為1即可刪除列
df.drop('column name', axis=1, inplace=True)
其中,’column name’是需要刪除的列名,inplace參數表示對原dataframe進行修改
該方法也支持同時刪除多列,只需在列名列表中添加需要刪除的列即可:
df.drop(['column1', 'column2'], axis=1, inplace=True)
二、dataframe刪除任意空值的行
在dataframe數據分析中,常常需要對空值進行處理。如果需要刪除任意空值的行,可以使用dropna()方法。該方法默認刪除包含任意空值的行。
df.dropna(inplace=True)
同時,該方法也支持刪除包含不同程度空值的行,只需要將其中的參數threshold修改就可以。
df.dropna(thresh=n, inplace=True)
其中,n表示最少允許有多少個非空值
三、dataframe刪除重複數據
在dataframe中,經常會存在重複的數據。如果需要刪除重複數據,可以使用drop_duplicates()方法。
df.drop_duplicates(inplace=True)
該方法默認刪除全部列的重複數據。如果需要指定刪除哪些列的重複數據,可以在方法中指定需要考慮重複的列名列表。
df.drop_duplicates(['column1', 'column2'], inplace=True)
四、dataframe刪除列
前面已經介紹了如何刪除單個或多個列。如果需要刪除不連續的多列,也可以在drop()方法中指定需要刪除的列名列表。
df.drop(columns=['column1', 'column2'], inplace=True)
五、dataframe刪除一行
在dataframe中,如果需要刪除某一行,可以通過指定橫向的行號來實現。在Python中,行號從0開始計數,因此需要將需要刪除的行號-1
df.drop(df.index[row_num-1], inplace=True)
六、dataframe刪除指定值的行
除了刪除空值行或重複行,有時候需要刪除某一列中存在某些值的行。可以使用如下代碼實現:
df = df[~df['column name'].isin(['value1', 'value2'])]
以上代碼中,在列名後使用isin()方法選取需要刪除的多個值,最後在列名前加上「~」表示反選,即刪除不匹配的行。
七、dataframe刪除指定行
除了通過行號來刪除指定行,還可以通過訪問某一列的值來刪除特定行。例如:
df = df[df['column name'] != 'value']
以上代碼中,等號右邊的value代表要刪除的行所在列的特定值。最後一行代碼實現了將不等於value的所有行複製到df中,從而實現了刪除指定行的效果。
八、dataframe刪除某一列
如果只是需要刪除某一列,可以使用drop()方法,代碼如下:
df.drop('column name', axis=1, inplace=True)
此時,需要將axis參數設置為1,表示要刪除列。
九、dataframe刪除最後一行
如果需要刪除dataframe中的最後一行,可以使用如下代碼實現:
df.drop(df.index[-1], inplace=True)
這裡使用了Python中負數的特性,-1表示最後一個元素。
總結
以上就是對於dataframe刪除的詳細闡述。在數據分析中,刪除數據常常是數據清洗的一部分,掌握dataframe的刪除方法對於數據清洗工作非常重要。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/151816.html