這是我的第一篇文章。我剛剛在2周前開始編程,因爲我的研究實驗室需要小組中的技能。我們正在提取的數據不是從軟件分隔的,因此剪切和粘貼最終會得到隨機空間值,需要數小時才能清理。所以我寫了這個代碼,我在Word中清理了數據,然後複製到剪貼板。我將剪貼板內容分配給一個變量。爲什麼我的R函數刪除.csv輸出中的重複值?
因此,舉例來說,如果原始數據是這樣的:
Component WBC RBC Hemoglobin
Latest Ref Rng & Units 3.90 - 12.70 K/uL 4.60 - 6.20 M/uL 14.0 - 18.0 g/dL
9/11/2017 7.16 4.71 13.3 (L)
3/20/2017 5.80 4.31 (L) 12.7 (L)
2/6/2017 6.10 3.74 (L) 11.3 (L)
1/30/2017 6.59 4.18 (L) 12.7 (L)
1/26/2017 7.40 7.40 (L) 12.1 (L)
我清理在Word中複製到剪貼板如下:
Component WBC RBC Hemoglobin
9/11/2017 7.16 4.71 13.3
3/20/2017 5.80 4.31 12.7
2/6/2017 6.10 3.74 11.3
1/30/2017 6.59 4.18 12.7
1/26/2017 7.40 7.40 12.1
然後我運行下面的函數I創建一次後,我將readClipboard()
分配給一個對象:
cbclabs.R <- function (x){
trimcbc <- strsplit(trimws(x), " ")
removespace <- c("&", "")
unlisted <- unlist(lapply(trimcbc, setdiff, removespace))
cbcmatrix <- matrix(unlisted, ncol = 4, byrow = TRUE)
return(write.csv(cbcmatrix, file = "cbc.csv"))
}
任何意見csv文件跳過在某些時候讓輸出看起來像重複每行的值在此代碼將不勝感激!
請參閱下面的答案。你也可以在'r'中做'Word'清理。如果你願意,我會補充一點。 – Tunn
是的,我將如何做一個單詞清理?我還有其他一些問題,但我會將它們作爲單獨的問題發佈!這太棒了!感謝你的幫助! – MeeraWhy
看起來你所做的只是在每一列中保留第一個數字,所以修改'as.numeric(gsub(「(\\ d * \\。\\ d *)。 「,」\\ 1「,df $ column))'。用你的數據框和列填寫'df $ column'。如果您使用'dplyr',請查看'mutate_all'。 – Tunn