Python小點dian兒: 按列條件篩選、刪除DataFrame的整行

pandas刪除指定行

遇到清洗數據的問題,需要把某一列數據中,那些爲指定元素的數據,整行去除

嘗試了drop卻不能到達理想的效果,drop僅僅刪除了第一個。

isin效果理想

import pandas as pd
df = pd.DataFrame({"key":['green','red', 'blue'],
            "data1":['a','b','c'],"sorce": [33,61,99]})
  data1    key  sorce
0     a  green     33
1     b    red     61
2     c   blue     99
mport pandas as pd
df = pd.DataFrame({"key":['green','red', 'blue'],
            "data1":['a','b','c'],"sorce": [33,61,99]})
data1 = pd.concat([df,df],ignore_index=True)
data2=data1[-data1.sorce.isin([61])]
print("---------------")
print(data1)
print("---------------")
print(data2)
print("---------------")
data3=data1.drop(data1.ix[:,'sorce']==61)
print(data3)
---------------
  data1    key  sorce
0     a  green     33
1     b    red     61
2     c   blue     99
3     a  green     33
4     b    red     61
5     c   blue     99
---------------
  data1    key  sorce
0     a  green     33
2     c   blue     99
3     a  green     33
5     c   blue     99
---------------
  data1    key  sorce
2     c   blue     99
3     a  green     33
4     b    red     61
5     c   blue     99

Process finished with exit code 0

data.name.isin([篩選元素])

對dataframe的某列(name爲列名)進行篩選,加負號的原因是想刪除符合條件的行,不寫負號是篩選出符合條件的行

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章