Python 根据表中多列的条件删除随机N行

Python 根据表中多列的条件删除随机N行,python,pandas,dataframe,Python,Pandas,Dataframe,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

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................
df1 = df.drop(df[df['Title'].str.contains('rom-com')].sample(5).index & /
[df['Title'].str.contains('murder')].sample(6).index)
我想删除列标题有值的列的5个随机行,并删除列标题有值的列的6个随机行

代码:

    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................
df1 = df.drop(df[df['Title'].str.contains('rom-com')].sample(5).index & /
[df['Title'].str.contains('murder')].sample(6).index)
错误:

    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................
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'
但两者结合在一起,我无法删除与多列中的值对应的行。

可以使用:


如果有多个列呢?假设我还想删除列值为thriller的2个随机实例。同样的方法会奏效吗?@ShailajaGuptaKapoor-Yop,
df1=df.drop(df[df['Title'].str.contains('rom-com'))].sample(5.index.union(df[df['Title'].str.contains('surgery'))].sample(2.index))