簡體   English   中英

R中的順序函數:參數長度不同

[英]Order function in R: argument lengths differ

我在 R 中收到以下錯誤:

argument lengths differ.

我有一個數據集,我想在兩列上排序,首先是 caseID,然后是包含時間戳的列。 我使用以下代碼:

mydata <- mydata[order(mydata[ ,col1], mydata[ ,col2], decreasing = FALSE),]

Col1 和 col2 是兩個保存整數的變量。 我查看了類似的問題並嘗試了那里提出的解決方案,但沒有任何效果;)。

有人可以幫我嗎?

親切的問候

R認為你的2列有不同的長度,有時會在你不小心訪問不存在的列時發生,檢查col1col2的值以確保它們是合適的數字。 還要查看length(mydata[,col1])length(mydata[,col2])以查看這兩個值是否匹配。 同時檢查是否存在遺漏,或其他標點符號,有時如果你沒有語法完全正確的,那么你得到的長度1,或不長的其它矢量匹配單個元素的向量的列表。

我遇到了同樣的問題,但能夠讓我的代碼正常工作。 試試這個代碼。

with(mydata, mydata[order(col1,col2),]). 

結果是減少,因此不需要添加函數減少= False。 希望有所幫助。

可能很高興檢查這個類似的帖子,使用dplyr包解決它,它幫助我: 安排在dpl​​yr組內

這可能會成功:

library(dplyr)
mydata <- mydata %>%
  arrange(
    col1,
    col2,
    desc(col3)
  )

我在加載plyr加載dplyr包時遇到了這個問題。 當你這樣做時,會出現一個警告:

您在 dplyr 之后加載了 plyr - 這可能會導致問題。
如果您需要 plyr 和 dplyr 的函數,請先加載 plyr,然后加載 dplyr:
圖書館(plyr); 圖書館(dplyr)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM