0
我有具有3列的數據框「fish」。數據框按列1中的值排序。我想根據列3中的最低值選擇行。如何僅選擇這些行? 我正在嘗試通過最低的列3值來繪製第1列中的數據。如何根據列中的值選擇數據框中的行
我有具有3列的數據框「fish」。數據框按列1中的值排序。我想根據列3中的最低值選擇行。如何僅選擇這些行? 我正在嘗試通過最低的列3值來繪製第1列中的數據。如何根據列中的值選擇數據框中的行
此代碼創建一個數據框,並返回具有三個最低值的行,我們稱之爲unif
。你已經有了數據框,所以你只需要選擇你想要過濾的列。在我使用unif
的地方,您可以使用任何列名稱。
## create the dataframe
n = 10
df = data.frame(round(runif(n),1), round(rnorm(n),1))
colnames(df) = c('unif', 'norm')
unif norm
1 0.4 0.7
2 0.4 0.2
3 0.3 1.3
4 0.8 -0.4
5 0.3 -0.6
6 0.3 1.8
7 0.5 -1.0
8 0.4 0.4
9 0.0 0.2
10 0.6 -0.6
隨着該數據幀,我們只需要行與上unif
列最低的三個值篩選的行。
## return the rows with the three lowest values
df[order(df$unif)[(1:3],] #### This is the part you need
將返回這個結果,這是我覺得你想要什麼:需要
unif norm
7 0.5 -1.0
10 0.6 -0.6
4 0.8 -0.4
更多信息。 –
歡迎來到StackOverflow,@ kiki33!當要求志願者幫助你解決代碼和/或問題時,我們既不是讀心者,也不是我們有時間來設計自己的數據,以便可能符合你的意圖。爲了幫助我們,請閱讀關於[最小,完整,可驗證示例](http://stackoverflow.com/help/mcve)和[可重現示例]的**(http://stackoverflow.com/questions/ 5963269 /如何對做 - 一個偉大-R重現-例子)。之後,回到這裏並相應地編輯你的問題。 (在此之前,您可能會收到很少或沒有回覆。) – r2evans