簡體   English   中英

如何在兩個數據框列表上應用函數?

[英]How to apply a function on two lists of data frames?

我有兩個數據框列表。 我們稱它們為 list_A 和 list_B。

df1 = data.frame(matrix(rnorm(4), nrow=2))
df2 = data.frame(matrix(rnorm(4), nrow=2))
df3 = data.frame(matrix(rnorm(4), nrow=2))
df4 = data.frame(matrix(rnorm(4), nrow=2))

list_A <- list(df1,df2)
list_B <- list(df3,df4)

我現在如何以元素明智的方式在列表上應用一些自定義功能? 例如,將 df1 乘以 df3,將 df2 乘以 df4。 然后該函數應該獲取列表的前兩個數據幀,將它們定義為矩陣並將它們相乘。

我們可以使用Map將函數應用於 'list_A' 和 'list_B' 的對應元素

Map(`*`, list_A, list_B)

正如@RHertel 在評論中提到的,如果需要的功能是%*%

 Map(function(x,y) as.matrix(x) %*% as.matrix(y), list_A, list_B)

暫無
暫無

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

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