Mam dwa oddzielne zestawy danych: jeden ma nagłówki kolumny, a inne ma dane.

Pierwszy wygląda tak: DataSet Columnheader

Gdzie chcę dokonać drugiej kolumny jako nagłówki kolumny następnego zestawu danych:

dateset

W jaki sposób mogę to zrobić? Dziękuję Ci.

r
0
Math Expert 4 czerwiec 2018, 22:44

3 odpowiedzi

Najlepsza odpowiedź

Spróbuj tego:

colnames(df2) <- as.character(df1[,2])

colnames() Definiuje nazwy kolumny (nagłówek) matrycy lub dataframe.

Uważaj, że długość kolumn i nagłówek jest identyczny.

Jest też możliwe, aby zmienić nazwę jednej nazwy za pomocą nawiasów [].

colnames(df2)[1] <- "name"

Zmień to nazwę pierwszej kolumny.

Odpowiednik wierszy jest rownames()

1
mischva11 17 maj 2019, 14:12

DPLYR WAY W / REPODUCILY KOD:

library(dplyr)
df <- tibble(x = 1:5, y = 11:15)
df_n <- tibble(x = 1:2, y = c("col1", "col2"))
names(df) <- df_n %>% select(y) %>% pull()

Myślę, że składnia select() %>% pull() jest łatwiejsza do zapamiętania niż indeksowanie listy. Użyłem również names nad funkcją colnames. Podczas pracy z dataframe, colnames po prostu wywołuje funkcję names, tak lepiej wyciąć pośrednik i być bardziej wyraźnym, że pracujemy z dataframe, a nie macierzy. Również krótszy do typu.

1
Beau 16 sierpień 2018, 18:00

Możesz to po prostu zrobić:

names(data)[3]<- 'Newlabel'

Gdzie names(data)[3] jest kolumną, którą chcesz zmienić.

0
Mohamed Berrimi 23 kwiecień 2020, 20:39