我有兩個問題的問題,都是很簡單我相信處理R.兩個數據格式化的R
我想創建一個IF語句,將在一列分配NA值一定行。我曾嘗試下面的命令:
a[a[,21]==0,5:10] <-NA
錯誤說:
錯誤[< -.data.frame(TMP,A [21] == 0,5:20 ,值= NA):缺失值未在數據的下標分配允許幀
本質上是代碼應該採取在列21中的任0的值,和從第5列替換該行的值以10〜 NA。第21列中有NA,但我不確定這是否有什麼作用?
我不知道如何製作這個下一個功能。我需要處理包含正面和負面控制的數據。然而,當我操縱數據時,我不希望積極和消極的控制值分開操縱,但我希望積極和消極控制留在列中,因爲我必須稍後使用它們。無論如何要暫時忽略這些值,以便它們不被包含在操作中?
下面的示例數據:
L = c(2,1,4,3,1,4,2,4,5,1)
R = c(2,4,5,1,"Neg",2,"",1,2,1)
T = c(2,1,4,2,"CTRL",2,"PCTRL",2,1,4)
test <- data.frame(L=L,R=R,T=T)
我希望能夠基於字符「負極性」「CTRL」 /「」「PCTRL」,而不是他們的位置暫時忽略這些行數據幀如果可能的話。注意陰性對照如何,Neg和CTRL分別在同一行的單獨列中,就像積極控制一樣,在單獨列和同一行中存在空白和PCTRL。鑑於這些奇怪的條件,有什麼辦法可以做到這一點?
希望這篇文章寫得夠清楚了,我很感謝任何人花時間幫助我!
比較'a [,21] == 0'將是'NA',其中'a [,21]'的元素是'NA';我們不知道這些元素是否等於'0',因爲我們不知道這些元素是什麼。這給你一個包含'TRUE'和'FALSE'的向量,其中'a [,21]'不等於零,**加**'NA',其中'a [,21]'是'NA'。這會導致您嘗試使用「NA」分配* assign *,這是不允許的。 –