我有一个Pandas DataFrame,其中包含我想根据"population"列中的值删除的行:
data['population'].value_counts()
general population 21
developmental delay 20
sibling 2
general population + developmental delay 1
dtype: int64
Run Code Online (Sandbox Code Playgroud)
在这里,我想删除两行sibling作为值.所以,我相信以下应该做的诀窍:
data = data.drop(data.population=='sibling', axis=0)
Run Code Online (Sandbox Code Playgroud)
它会丢弃2行,正如您在结果值计数中看到的那样,但它们不是具有指定值的行.
data.population.value_counts()
developmental delay 20
general population 19
sibling 2
general population + developmental delay 1
dtype: int64
Run Code Online (Sandbox Code Playgroud)
知道这里发生了什么吗?
dataFrame.drop接受索引(标签列表)作为参数,而不是掩码.
使用drop你应该做:
data = data.drop(data.index[data.population == 'sibling'])
Run Code Online (Sandbox Code Playgroud)
但这样做要简单得多
data = data[data.population != 'sibling']
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9360 次 |
| 最近记录: |