我是R的新手,这是我的第一个问题,因此,我尝试尽可能详细地说明我的问题:
我有一个数据框,该数据框由7列和约400万行(EPO的专利数据)组成,第七列包括专利分类,这是一个字符组合,例如"G01T001/00"
。我正在尝试将该列中的所有字符减少到前4位-换句话说,保留它们-(G01T001 / 00-> G01T),并保持所有其他列及其值不变。
我已经尝试过根据虹膜在相关问题中提出的某些建议:
library(datasets)
library(stringr)
iris<-str_sub(iris$Species, end=-4)
此示例删除列种类中每个值的最后3个字符,但最后我只获得了此列,而所有其他列均“消失”。
在虹膜上转移我的问题:
我想保留虹膜,只将“种类”列中的字符减少到前4位。
你的代码行用缩短的列替换了完整的虹膜数据集。你需要具体说明,你只想用缩短的列替换“种类”列。
iris$Species <- str_sub(iris$Species, end=-3)
如果此答案对您有用,请确保您在解决问题时“接受”它。
坦克这么多,它起作用了!由于
iris$Species
在我的数据列中以及我的数据列中都有值,这些值由不同的字符号组成,因此我iris$Species <- str_sub(iris$Species, start=1 end=4)
以前只在Species列中保留了每行的前4个字符。伟大的。为了使其他人更容易回答您的问题,下一次我将在您的代码中加入,
library(datasets)
并library(stringr)
在其中进行了摘录,以使人们不必四处寻找和寻找答案。