小编Jnr*_*rfL的帖子

使用tidyr将具有不均匀字符串长度的行拆分为R中的列

编辑:这被标记为重复.它不是.这里的问题不仅仅是将单个列拆分为多个列,因为我的单独代码会起作用.我的问题的要点是当行字符串具有不同长度的列输出时拆分列.

我试图改变这个:

data <- c("Place1-Place2-Place2-Place4-Place2-Place3-Place5",
          "Place7-Place7-Place7-Place7-Place7-Place7-Place7-Place7",
          "Place1-Place1-Place1-Place1-Place3-Place5",
          "Place1-Place4-Place2-Place3-Place3-Place5-Place5",
          "Place6-Place6",
          "Place1-Place2-Place3-Place4")
Run Code Online (Sandbox Code Playgroud)

进入:

      X1     X2     X3     X4     X5     X6     X7     X8
1 Place1 Place2 Place2 Place4 Place2 Place3 Place5 
2 Place7 Place7 Place7 Place7 Place7 Place7 Place7 Place7
3 Place1 Place1 Place1 Place1 Place3 Place5 
4 Place1 Place4 Place2 Place3 Place3 Place5 Place5 
5 Place6 Place6 
6 Place1 Place2 Place3 Place4
Run Code Online (Sandbox Code Playgroud)

我尝试使用此代码使用tidyr的单独函数:

library(data.table)
data <- as.data.table(data)
data_table <- tidyr::separate(data,
                            data,
                            sep="-",
                            into = strsplit(data$data, "-"),
                            fill = "right")
Run Code Online (Sandbox Code Playgroud)

可悲的是我收到了这个错误:

Warning message:
Too …
Run Code Online (Sandbox Code Playgroud)

regex string r tidyr

4
推荐指数
1
解决办法
1676
查看次数

标签 统计

r ×1

regex ×1

string ×1

tidyr ×1