我有一个包含部分NA的变量。它是一个变量,表示从开始年份到年终的时间段,但是在年末和正在进行的时间段内,期间范围缺少NA。
# startyear endyear ongoingasofyear imposition sanctions_period
#1 1945 1947 NA 1 1945-1947
#2 1946 1949 NA 1 1946-1949
#3 1946 1993 NA 1 1946-1993
#4 1946 NA NA 1 1946-NA
#5 1946 1946 NA 1 1946-1946
#6 1946 NA NA 1 1946-NA
如何删除在制裁周期中包含NA的观察结果?谢谢!
答案 0 :(得分:0)
有一个内置命令:complete.cases()
d1 <- read.table(header=TRUE,text="
startyear endyear ongoingasofyear imposition sanctions_period
1945 1947 NA 1 1945-1947
1946 1949 NA 1 1946-1949
1946 1993 NA 1 1946-1993
1946 NA NA 1 1946-NA
1946 1946 NA 1 1946-1946
1946 NA NA 1 1946-NA")
d2 <- d1[complete.cases(d1[c("startyear","endyear")]),]
答案 1 :(得分:0)
您也可以使用sqldf
库(sqldf)
df&lt; - read.csv(&#34; df.csv&#34;,header = TRUE,sep =&#34;&#34;)
sqldf(c(&#34;从df中删除,其中,制裁时间类似于&#39;% - NA%&#39;&#34;,&#34;从* df&#34中选择*))