第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

折疊的行,其中一些全為NA,其他行與某些NA不相交

折疊的行,其中一些全為NA,其他行與某些NA不相交

慕的地8271018 2019-10-22 21:52:14
我有這樣一個簡單的數(shù)據(jù)框:ID    Col1    Col2    Col3    Col41     NA      NA      NA      NA  1     5       10      NA      NA1     NA      NA      15      202     NA      NA      NA      NA  2     25      30      NA      NA2     NA      NA      35      40 我想這樣重新格式化:ID    Col1    Col2    Col3    Col41     5       10      15      202     25      30      35      40(請注意:實際數(shù)據(jù)集有數(shù)千行,其值來自生物學(xué)數(shù)據(jù)NA-s不遵循簡單的模式,除了NAs不相交,是的,每個正好有3行ID)。步驟1:擺脫僅包含NA值的行。從表面上看,這看起來很簡單,但是我遇到了一些問題。complete.cases(DF)返回all FALSE,所以我不能真正使用它來刪除所有帶有NAs 的行,如中所示DF[complete.cases(DF),]。這是因為所有行都至少包含一個NA。由于NAs想要傳播自己,因此其他使用is.na相同方案的失敗。第二步:將剩余的兩行折疊為一??紤]使用類似的aggregate方法,但是必須有一個比this更簡單的方法,這根本行不通。感謝您的任何建議。
查看完整描述

3 回答

?
慕妹3242003

TA貢獻(xiàn)1824條經(jīng)驗 獲得超6個贊

以下是一些匯總嘗試:


aggregate(. ~ ID, data=dat, FUN=na.omit, na.action="na.pass")

#  ID Col1 Col2 Col3 Col4

#1  1    5   10   15   20

#2  2   25   30   35   40

由于aggregate默認(rèn)情況下,公式接口na.omit會在進行任何分組之前使用整個數(shù)據(jù),因此它將刪除其中的每一行,dat因為它們都至少包含一個NA值。試試看:nrow(na.omit(dat))return 0。因此,在這種情況下,請使用na.passin aggregate,然后na.omit跳過NA通過的。


或者,不要使用公式接口并指定要手動匯總的列:


aggregate(dat[-1], dat[1], FUN=na.omit )

aggregate(dat[c("Col1","Col2","Col3","Col4")], dat["ID"], FUN=na.omit)

#  ID Col1 Col2 Col3 Col4

#1  1    5   10   15   20

#2  2   25   30   35   40


查看完整回答
反對 回復(fù) 2019-10-22
  • 3 回答
  • 0 關(guān)注
  • 534 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號