Jak podzielić kolumnę w R


Najlepsza odpowiedź

Oto moja ramka danych.

> data

Manufacturers

1 Audi,RS5

2 BMW,M3

3 Cadillac,CTS-V

4 Lexus,ISF

Więc chciałbym podzielić producentów i modele, w ten sposób,

> data

Manufacturers Models

1 Audi RS5

2 BMW M3

3 Cadillac CTS-V

4 Lexus ISF

biblioteka (qdap);

colsplit2df (data ,, c („Producent”, „Model”), „,”)

LUB

użyj oddzielny () przez tidyr pakiet

oddzielny (DataTable, ColumnName, into = ”“, sep = ””)

LUB

Chciałbym podzielić jedną kolumnę na dwie w ramce danych na podstawie separatora. Na przykład

a|b

b|c

aby stać się

a b

b c

w ramce danych.

df <- data.frame(ID=11:13, FOO=c("a|b", "b|c", "x|y"))

separate(data = df, col = FOO, into = c("left", "right"), sep = "\\|")

ID left right

1 11 a b

2 12 b c

3 13 x y

chociaż w tym przypadku wartości domyślne są wystarczająco inteligentne, aby działać (szuka znaków innych niż alfanumeryczne do podziału).

LUB

separate(data = df, col = FOO, into = c("left", "right"))

library(reshape2)

before = data.frame(attr = c(1,30,4,6), type=c("foo\_and\_bar","foo\_and\_bar\_2"))

newColNames <- c("type1", "type2")

newCols <- colsplit(before$type, "\_and\_", newColNames)

after <- cbind(before, newCols)

after$type <- NULL

after

Odpowiedź

Cześć Ashutosh

Istnieje wiele sposobów zmiany lub zmiany nazwy kolumny w R, zależy to tylko od twoich wymagań.

1. Zmień nazwy kolumn w ramce danych - zaczyna się od pierwszej kolumny i trwa, dopóki nie wyczerpią się podane przez Ciebie nazwy. Na przykład, jeśli ramka danych zawiera osiem kolumn, ale podasz tylko dwie nazwy, zmienione zostaną tylko dwie pierwsze kolumny.

Składnia:

names(data) <- c("new\_name", "another\_new\_name")

2. Zmień nazwę kolumny, używając nazwy, aby określić, do której kolumny zastosować nazwę.

Składnia:

colnames(data)[colnames(data)=="old\_name"] <- "new\_name"

3. Zmień nazwę kolumny, używając numeru kolumny, aby określić, do której kolumny należy zastosować nazwę. Poniższy kod zmieni nazwę trzeciej kolumny w danych ramki danych na nazwę nowa\_nazwa.

Składnia:

names(data)[3]<-"new\_name"

Uwaga: R pozwoli na nazwanie pola spacją, ale po zmianie nazwy nie będzie można łatwo odwołać się do tej kolumny. Jeśli chcesz, aby nazwy kolumn były bardziej czytelne do prezentacji, zrób to jako ostatni krok tuż przed wyeksportowaniem danych z R.

Dzięki!

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *