如何删除在特定列中具有NA的DataFrame的所有行?

托马斯W.

删除DataFrame中NA在特定列中具有值的所有行的最优雅方法是什么

jub0bs

我不知道接下来是否是删除NA在特定列中具有的所有行的最优雅的方法,但这是一种方法。

生成玩具DataFrame

julia> df = DataFrame(A = 1:10, B = 2:2:20)
10x2 DataFrame
| Row | A  | B  |
|-----|----|----|
| 1   | 1  | 2  |
| 2   | 2  | 4  |
| 3   | 3  | 6  |
| 4   | 4  | 8  |
| 5   | 5  | 10 |
| 6   | 6  | 12 |
| 7   | 7  | 14 |
| 8   | 8  | 16 |
| 9   | 9  | 18 |
| 10  | 10 | 20 |

julia> df[[1,4,8],symbol("B")] = NA
NA

julia> df
10x2 DataFrame
| Row | A  | B  |
|-----|----|----|
| 1   | 1  | NA |
| 2   | 2  | 4  |
| 3   | 3  | 6  |
| 4   | 4  | NA |
| 5   | 5  | 10 |
| 6   | 6  | 12 |
| 7   | 7  | 14 |
| 8   | 8  | NA |
| 9   | 9  | 18 |
| 10  | 10 | 20 |

过滤出"B"-column元素为NA

julia> df[~isna(df[:,symbol("B")]),:]
7x2 DataFrame
| Row | A  | B  |
|-----|----|----|
| 1   | 2  | 4  |
| 2   | 3  | 6  |
| 3   | 5  | 10 |
| 4   | 6  | 12 |
| 5   | 7  | 14 |
| 6   | 9  | 18 |
| 7   | 10 | 20 |

julia> df
10x2 DataFrame
| Row | A  | B  |
|-----|----|----|
| 1   | 1  | NA |
| 2   | 2  | 4  |
| 3   | 3  | 6  |
| 4   | 4  | NA |
| 5   | 5  | 10 |
| 6   | 6  | 12 |
| 7   | 7  | 14 |
| 8   | 8  | NA |
| 9   | 9  | 18 |
| 10  | 10 | 20 |

删除其"B"-column元素为NA

julia> deleterows!(df,find(isna(df[:,symbol("B")])))
7x2 DataFrame
| Row | A  | B  |
|-----|----|----|
| 1   | 2  | 4  |
| 2   | 3  | 6  |
| 3   | 5  | 10 |
| 4   | 6  | 12 |
| 5   | 7  | 14 |
| 6   | 9  | 18 |
| 7   | 10 | 20 |

julia> df
7x2 DataFrame
| Row | A  | B  |
|-----|----|----|
| 1   | 2  | 4  |
| 2   | 3  | 6  |
| 3   | 5  | 10 |
| 4   | 6  | 12 |
| 5   | 7  | 14 |
| 6   | 9  | 18 |
| 7   | 10 | 20 |

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用dplyr删除所有列中具有NA的行?

如何删除另一列中具有特定值的所有 NaN 值的行?

na.omits删除所有列中具有NA的所有行,而不仅限于指定的列

如何删除特定行中带有 NA 的 dplyr 列?

如何删除r中具有特定列条件的行?

如何删除某个变量的所有具有 NA 的行

如何删除具有特定Shading.BackgroundPatternColor的所有行(从选定表中删除)

删除在某些列中具有所有NA的行

在MySQL中删除所有具有特定值的行

如何(具有良好的渐近复杂性)从(很长)行中删除所有特定字符?

删除所有列中具有相同值的行

删除所有列中具有相同值的行

从 Dataframe 中删除行上方或下方在特定列中具有相同值的行

如何在PySpark DataFrame中删除具有空值的所有列?

如何根据即使只有一个重复项在另一列中具有特定值来删除列的所有重复行

DataFrame删除其列具有特定值的行

R 删除具有特定行条件的 Dataframe 列

Pandas DataFrame-删除特定列中与上一行具有相同值的行

在 Pandas 中,如何删除所有子行,但保留多索引数据框中特定列中具有最高值的子行?

如何通过熊猫或spark数据框删除所有行中具有相同值的列?

如何删除数据框所有列中具有相同元素的行?

将具有NA的行删除到特定的列和条件中

删除特定列中具有特定值的重复行

删除特定列中具有特定值的行

从具有MultiIndex的DataFrame中删除特定行

删除具有NA值的特定列

如何选择具有特定值的列迭代数据框中的所有行?

如何在MySQL表中显示具有特定列值的所有行?

Pyspark DataFrame如何在所有列中删除带有空值的行?