簡體   English   中英

在數據框上應用合並功能並保存為單個列表/數據框

[英]Applying combine function over dataframe and saving as a single list/dataframe

我正在嘗試創建一個網絡。 我有一個數據框:

v1 .v2 .v3
1 / .1 ... 2 .... 3

2 / .3 ... 4 .. 7

3 /。 6 ... 11。 9

我希望在每一行中找到所有可能的組合。 例如,第一行的值為1、2、3,因此結果將是(1、2)(1、3)(2、3)。 然后,我將繼續查找僅在第二行3、4、7返回(3、4)(3、7)(4、7)的值之間的組合。

現在,我希望逐行執行此功能,然后將所有結果組合在一起以創建邊緣列表以創建網絡。

我已經嘗試了幾個小時的函數,應用和合並迭代,但似乎無法正常工作。

有人對如何解決這個問題有任何想法嗎?

最后,我是R的新手。是否有辦法將其分解或逐步解決? 如果可以使用諸如apply,for循環和填充之類的簡單功能,而不是使用奇特的特定功能,我將不勝感激。 這樣,我可以查看您的想法並向他們學習,以便以后將其應用於其他問題。

您可能已經很接近了(盡管您將來應該發布嘗試的代碼,並且還使用dput的數據)。

使用apply的問題是它將嘗試自動進行簡化(簡化為單個向量或矩陣),並且由於combn返回矩陣,因此您絕對不希望進行簡化。 lapply時,應使用lapply

lapply(1L:nrow(your_data_frame), function(i) { combn(your_data_frame[i,], m=2L) })

暫無
暫無

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

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