Łącz rzędy ramki danych
Chciałbym wziąć ramkę danych ze znakami i liczbami i połączyć wszystkie elementy każdego wiersza w pojedynczy ciąg, który byłby przechowywany jako pojedynczy element w wektorze. Jako przykład tworzę ramkę danych z liter i cyfr, a następnie chciałbym połączyć pierwszy wiersz za pomocą funkcji wklejania i mam nadzieję, że zwróci wartość „A1”
df <- data.frame(letters = LETTERS[1:5], numbers = 1:5)
df
## letters numbers
## 1 A 1
## 2 B 2
## 3 C 3
## 4 D 4
## 5 E 5
paste(df[1,], sep =".")
## [1] "1" "1"
Więc wklej konwertuje każdy element wiersza na liczbę całkowitą, która odpowiada „indeksowi odpowiedniego poziomu”, jakby był czynnikiem, i utrzymuje go jako wektor o długości dwóch. (Wiem / wierzę, że czynniki, które są zmuszane do bycia postaciami, zachowują się w ten sposób, ale ponieważ R nie przechowuje df [1] jako czynnika w ogóle (testowane przez is.factor (), nie mogę zweryfikować, że to jest jest właściwie indeksem poziomu)
is.factor(df[1,])
## [1] FALSE
is.vector(df[1,])
## [1] FALSE
Jeśli więc nie jest to wektor, to ma sens, że zachowuje się dziwnie, ale nie mogę go zmusić do wektora
> is.vector(as.vector(df[1,]))
[1] FALSE
Za pomocąas.character
nie wydawał się pomagać w moich próbach
Czy ktoś może wyjaśnić to zachowanie?