[英]Remove random N number of rows based on conditions on multiple columns in pandas
df
Text column Title Numbers column
0 abc rom-com 1
1 xyz comedy 2
2 hi rom-com 4
3 jkl murder 5
4 abc thriller 2
and so on................
我想要的是:
我想刪除標題列值為rom-com 的5 個隨機行,並刪除標題列值為'murder' 的隨機列的6 行。
代碼:
df1 = df.drop(df[df['Title'].str.contains('rom-com')].sample(5).index & /
[df['Title'].str.contains('murder')].sample(6).index)
錯誤:
AttributeError: 'list' object has no attribute 'sample'
上面的代碼適用於一個標題,但不能同時使用。
df1 = df.drop(df[df['Title'].str.contains('rom-com')].sample(5).index \
#this alone works for both murder and rom-com separately.
但是兩者一起我無法刪除與多列中的值相對應的行。
Index.union
是可能的:
df1 = df.drop(df[df['Title'].str.contains('rom-com')].sample(5).index.union(df[df['Title'].str.contains('murder')].sample(6).index))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.