2015-08-08 1 views
-1

Итак, у меня есть файл excel с 5 столбцами и 100 строками. Я импортирую это в R.присвоение переменной каждой строке для формата excel на R

Я хочу создать уникальный вектор списка для каждой из строк. Каждый вектор затем будет содержать 5 элементов.

Моя проблема заключается в том, как заставить R автоматически назначать 100 уникальных имен переменных и присваивать каждому элементу строки эти переменные? Я не хочу вручную назначать имена переменных для каждой строки.

ответ

1

Для этого вы можете использовать функцию split. Пример:

# creating a data.frame 
df <- data.frame(x=gl(2,10, labels=c("t","c")), y=runif(20)) 
# splitting the dataframe df in seperate dataframes 
lst <- split(df, 1:nrow(df)) 

Это создаст список dataframes lst. Вы можете получить доступ к отдельные dataframes следующим образом:

> lst[1] 
$`1` 
    x  y 
1 t 0.971842 

немного альтернативный подход:

# creating a data.frame 
set.seed(1) 
df <- data.frame(x=rnorm(20), y=runif(20)) 
# creating a unique value for each row 
df$unique <- paste0("u",seq_len(20)) 
# splitting the dataframe df in seperate dataframes 
lst <- split(df, df$unique) 

это дает, например:

> lst$u11 
      x   y unique 
11 1.511781 0.4776196 u11 
+0

Спасибо большое за помощь! – firelitte

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