Mam dwie ramki danych, pierwsza ma trzy kolumny;jedna nazwa, druga wartość (nieistotna), a trzecia jest pusta. Ten DF zawiera około 40 000 wierszy. Druga ramka danych zawiera listę nazw, około 100 000. Chcę dopasować / znaleźć nazwę w pierwszym DF z nazwą w drugim DF i wypełnić puste pole w pierwszej wartości powiązanej z nazwą w drugim DF. W tej chwili mogę to zrobić za pomocą pętli, ale jest ona wolna i niezbyt „wektoryzowana”. Czy istnieje jeden wiersz kodu, który może to osiągnąć. Z góry dziękuję.
Odpowiedzi:
1 dla odpowiedzi № 1Wygląda na to, że chcesz scalić dwie ramki danych:
# Create sample data
set.seed(3526)
df1 <- data.frame(
name = letters,
value1 = sample(1:100, 26, replace = TRUE),
stringsAsFactors = FALSE
)
df2 <- data.frame(
name = letters,
value2 = sample(1:100, 26, replace = TRUE),
stringsAsFactors = FALSE
)
# Merge the datasets
new_df <- merge(df1, df2, by = "name")