我需要排除一列,我知道它只包含空值 我之前使用this topic作为示例,但我不确定如何排除列。
有几个不同的数据框,如下面的一个,但列数不同,每个人都想要除了最后一列中的NA之外的所有NA。
PIG_ID WEIGHT HERD_YEAR_BIRTH BIRTH_MONTH PARITY_BLL_DAM SEX_CODE LIVE_BORN_LITTER LIVE_BORN_LITTER2 VALID_COLUMN
13513130 7.5 65433130215 09 2 Z 9 81 <NA>
654605132 7.0 5646846421 04 3 Z 4 16 <NA>
654068065 4.0 5530201049 <NA> 3 B 15 225 <NA>
如何使用complete.cases完成此操作?
预期输出为:
PIG_ID WEIGHT HERD_YEAR_BIRTH BIRTH_MONTH PARITY_BLL_DAM SEX_CODE LIVE_BORN_LITTER LIVE_BORN_LITTER2 VALID_COLUMN
13513130 7.5 65433130215 09 2 Z 9 81 <NA>
654605132 7.0 5646846421 04 3 Z 4 16 <NA>
答案 0 :(得分:2)
我们将complete.cases
应用于没有'VALID_COLUMN'的数据集子集,并将其用作行索引。
df1[complete.cases(df1[setdiff(names(df1), 'VALID_COLUMN')]),]
# PIG_ID WEIGHT HERD_YEAR_BIRTH BIRTH_MONTH PARITY_BLL_DAM SEX_CODE
#1 13513130 7.5 65433130215 09 2 Z
#2 654605132 7.0 5646846421 04 3 Z
# LIVE_BORN_LITTER LIVE_BORN_LITTER2 VALID_COLUMN
#1 9 81 <NA>
#2 4 16 <NA>