2016-06-05 2 views
2

У меня есть dataframe ДФ со значениями ниже, как получить доступ к значениям списка/dataframe в другой dataframe

> df 
     X6 X7 
    1 5 3 
    2 1 4 
    3 8 8 

Я хочу, чтобы получить доступ к первой колонке и, чем второй Colum в

my_vector2 <- sapply(data_train[df,5], function(x) x) 

как можно Я делаю это? Если кто-нибудь знает, как передать значение списка в dataframe, как описано выше, что будет работать, а

>df 
    $`6` 
    [1] "5" "1" "8" 

    $`7` 
    [1] "3" "4" "8" 

Я хочу data_train принимать значения 5,1,8 один на один и возвращает значение столбца (5 фиксированное значение) в векторе 5: 5 = setosa 5: 1 = virsicolor

$`2` 
[1] versicolor versicolor virginica 
Levels: setosa versicolor virginica 

$`8` 
[1] virginica setosa  versicolor 
Levels: setosa versicolor virginica 

, например, в $ 2 я получаю лишай два раза так «результат» мой переменный должна получить ответ лишай и в случае $ 8 он должен получить все факторы

+0

Непонятно, что вы хотели. Вы используете весь набор данных df как индекс строки для подмножества некоторого другого 'data_train' – akrun

+0

Да! Первоначально df содержит индексы, и я хочу передать их как индекс строки в data_train, я знаю, что это звучит глупо, но я понятия не имею, как это сделать. – melissa

+0

Я разместил решение ниже. Возможно, это то, что вы хотели. Но лучше показать воспроизводимый пример для 'data_train' и ожидаемого вывода – akrun

ответ

0

Если нам нужно использовать «DF» столбцы как индекс строки/столбца, чтобы подмножество в data_train, а затем преобразовать его в matrix и просто подмножество в «data_train»

data_train[as.matrix(df)] 

Или, если столбцы в «ДФ» являются индекс строки и хотите подмножить 5-й столбец, затем перебирать столбцы 'df' и подмножество 'data_train'

lapply(df, function(x) data_train[as.numeric(x), 5]) 
+0

, он дает эту ошибку Ошибка в as.mathrix (x) [i]: индекс за пределами – melissa

+0

@melissa Я обновил с другим вариантом, если это то, что вы хотели. – akrun

+0

Thannks это сработало, можете ли вы рассказать мне, как получить мод этого списка/dataframe, который я получаю? – melissa

Смежные вопросы