我有一个返回固定长度向量的函数。它是不是这个功能,但认为这是一个玩具例子:来自列的数据帧(tibble)
foo = function(letter) {
unlist(lapply(1:10, function (number) {paste(letter,number)}))
}
我的信cols = c("A", "L", "B")
一个载体,我想创建一个tibble其中每列是foo(letter)
:
# A tibble: 10 × 3
A L B
<chr> <chr> <chr>
1 A 1 L 1 B 1
2 A 2 L 2 B 2
3 A 3 L 3 B 3
4 A 4 L 4 B 4
5 A 5 L 5 B 5
6 A 6 L 6 B 6
7 A 7 L 7 B 7
8 A 8 L 8 B 8
9 A 9 L 9 B 9
10 A 10 L 10 B 10
上面的tibble是用data_frame("A"=foo("A"), "L"=foo("L"), "B"=foo("B"))
制作的,但是我不知道如何为任意长度的矢量cols
做这件事。
我确定这是基本的,可以在没有for循环的情况下完成。
在对手的框架是什么我要找的是可以做到
pd.DataFrame({letter: foo(letter) for letter in cols})
'library(purrr); c(“A”,“L”,“B”)%>%set_names()%>%map_df(foo)' – alistaire
@alistaire:这正是我要找的!请发帖作为答案,以便我可以接受 – user357269