2014-01-20 175 views
0

我對R還是比較新的,所以請原諒我說的缺乏正確和明確的術語。R,根據另一列的非數字值創建一個新列

我有一個從UDP流創建的數據集,設置爲從一個來源收集數據,從另一個來源收集時間。時間是異步添加的,這意味着一列包含信息(開始,停止),但其餘的這些行是空白的。下面的鏈接可能有助於解釋數據集中的確切內容。

https://googledrive.com/host/0Bw82Tt1bj-QRUkxwdGY2Qm5UOVk

我想「在新列「MarkerNew」改爲凡在列「MarkersOri」「開始」的位置,並打印」開始只有一個排了。 (隨後,我計劃刪除這些大部分空行和「MarkersOri」列)

我試圖實現if語句和findInterval命令,但是我找不到任何關於正在做我想做的事情。

編輯:解決。感謝幫助。

+1

一個很好的方式讓人們來幫助你是來發表您的數據和什麼樣的代碼到目前爲止,你已經盡力了,讓你的數據的一小部分使用這個命令: 'dput(your.data [1:10,]'然後將結果粘貼到您的問題中 – amzu

+0

感謝您的提示,下次我一定會按照這個程序! – ejgennri

回答

0

你想有一個新的列,只有'開始'裏面,但shifteb一行下來?

也許這可能幫助:

# some data 
df <- data.frame(col1 = LETTERS[1:10], stringsAsFactors=FALSE) 
df$col1[5] <- 'Start' 

# create empty column 
df$newcol <- NA 
# shift 'Start' by one row down, store it in the new column 
df$newcol[which(df$col1 == 'Start') + 1] <- 'Start' 
df 
相關問題