我正在使用R进行一些编码,并且正在处理将某些数据帧编码为单个字符串的情况,因此必须能够从字符串中恢复数据帧。字符串采用以下形式:

|Carrot^14|Cucumber^3|Potato^8|

分隔符|分隔数据帧的行,分隔符^分隔具有字符值的列和具有数值的列。 (为简化问题,请注意,这些符号仅作为分隔符出现,它们从不出现在数据框中的值中。)与该字符串对应的数据框为:
 Vegetable  Quantity
  "Carrot"        14
"Cucumber"         3
  "Potato"         8

我希望能够解码字符串以提取其编码的数据帧。我知道这将需要某种regexp查询,但是我不太确定该怎么做。我也不确定数据框和单个字符串之间的这种对应关系是否具有任何特定名称,该名称会导致我进一步了解该技术。

我的问题:这种从数据帧到单个字符串(然后返回)的编码是否具有特定名称?如何解码R中的字符串?

最佳答案

您可以将竖线交换为换行符,然后使用read.table()

txt <- "|Carrot^14|Cucumber^3|Potato^8|"

read.table(text = gsub("\\|", "\n", txt), sep = "^", col.names = c("Vegetable", "Quantity"))

  Vegetable Quantity
1    Carrot       14
2  Cucumber        3
3    Potato        8

关于r - 从R中的值之间的字符串中提取数据帧,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60474881/

10-12 17:49
查看更多