R 如何根据字母顺序重新排列数据帧每行中的条目(字符)?
我有一个像这样的R 如何根据字母顺序重新排列数据帧每行中的条目(字符)?,r,string,dataframe,R,String,Dataframe,我有一个像这样的data.frame: df=data.frame(word1 = c("hello", "red", "red"), word2 = c("world", "hello", "yellow"), word3 = c("red", "world", "hello"
data.frame
:
df=data.frame(word1 = c("hello", "red", "red"), word2 = c("world", "hello", "yellow"), word3 =
c("red", "world", "hello"), n = c(574L, 306L, 302L))
i、 e
我想按照字母顺序重新排列每行中的单词。例如:
> df_new
word1 word2 word3 n
1 hello red world 574
2 hello red world 306
3 hello red yellow 302
使用所选列上的
apply
循环行,sort
并更新这些列
df[1:3] <- t(apply(df[1:3], 1, sort))
df[1:3] <- t(apply(df[1:3], 1, sort))
library(dplyr)
library(tidyr)
df %>%
rowwise %>%
transmute(out = list(sort(c_across(where(is.character)))), n) %>%
ungroup %>%
unnest_wider(c(out), names_repair = ~names(df))