Это интересный вопрос, на который я не могу найти ответ. Позвольте мне просто прыгнуть прямо в мне нужно принять кадр данных, созданный из:.Кадр данных в структурированный список
TPA <- ddply(MT,~plot,summarise,TPA=length(unique(tree.number))*50)
> TPA
plot TPA
1 10A 700
2 10B 1000
3 1A 900
4 1B 950
5 2A 950
6 2B 650
7 3A 650
8 3B 1350
9 4A 1450
10 4B 1350
11 5A 850
12 5B 1100
13 6A 1050
14 6B 550
15 7A 850
16 7B 800
17 8A 2450
18 8B 950
19 9A 1150
20 9B 1000
и преобразовать это:
y <- list(one=c(900,950), two=c(950,650), three=c(650,1350), four=c(1450,1350), five=c(850,1100), six=c(1050,550), seven=c(850,800), eight=c(2450,950), nine=c(1150,1000), ten=c(700,1000))
> y
$one
[1] 900 950
$two
[1] 950 650
$three
[1] 650 1350
$four
[1] 1450 1350
$five
[1] 850 1100
$six
[1] 1050 550
$seven
[1] 850 800
$eight
[1] 2450 950
$nine
[1] 1150 1000
$ten
[1] 700 1000
Обратите внимание, что 1A в кадре данных соответствует «один» в список. Я знаю, как перейти от списка к кадру данных, но я не могу понять, как перейти от фрейма данных к списку. У меня есть функция, которая требует, чтобы список передавался в функцию. Для полноты, вот часть, которая использует список:
yi.bar <- unlist(lapply(y,mean))
s2i <- unlist(lapply(y,var))
Любые предложения?
Спасибо!
Вы могли бы хотеть, чтобы обернуть 'as.numeric' где-то там, чтобы автозаказ не помещал 10 впереди 2. – thelatemail
@thelatemail: Привет, исправлено. – Marius
Я закончил тем, что использовал этот метод, так как он вписывался в мой рабочий процесс немного лучше. Спасибо за помощь! – user2325155