我有以下数据框:
N numbers
n1 1,2,3
n2 4,6,2
n3 1
n4 2,5
n5 6
我需要删除 numbers 只有一个值的行。最有效的方法是什么?
请您参考如下方法:
这是一种方法,通过拆分字符串并找到列表的 len。
In [226]: df
Out[226]:
N numbers
0 n1 1,2,3
1 n2 4,6,2
2 n3 1
3 n4 2,5
4 n5 6
In [227]: df[df.numbers.str.split(',').apply(len) > 1]
Out[227]:
N numbers
0 n1 1,2,3
1 n2 4,6,2
3 n4 2,5
编辑:正如 Nickil Maveli 指出的那样,您可以使用 str.len() 而不是 apply(len)
或者,如果您的数据是这样组织的,不止一个数字会有 , 逗号,那么您可以
In [229]: df[df.numbers.str.contains(',')]
Out[229]:
N numbers
0 n1 1,2,3
1 n2 4,6,2
3 n4 2,5
