R:仅保留列中所有行中的前 3 (x) 个字符?

标签 r

我已经将几千个 xls 文件导入到 data.frame 中,并添加了一个带有文件名的列。

因此我有数据

data1  data2  data3  filname
A      A2     A3     301fg.xls
B      B2     B3     302gfg.xls
C      C2     C3     303gfsddf.xls
.,.,.,.

我想将文件名列中的名称重命名为仅包含前 3 个字符/数字,从而给出:
data1  data2  data3  filname
A      A2     A3     301
B      B2     B3     302
C      C2     C3     303
.,.,.,.

最佳答案

df$filname <- sub("^(\\d{3}).*$", "\\1", df$filname)

或者
df$filname <- substr(df$filname, 0, 3)

关于R:仅保留列中所有行中的前 3 (x) 个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21675379/

相关文章:

r - 如何将每列乘以 R 中的每个标量?

r - 将 tibble 转换为带有列标题的数据框

r - 使用 AzureStor R 库与 ADLSgen2 资源交互

r - 如何让 R 的 loess 和 R 的 lowess 函数给出相同的结果?

java - 安装 R 包时出错

r - 如何将邻接矩阵保存为 CSV 文件?

r - 无法在 ArcGIS 中打开通过 R 生成的大型 (3Gb) gri 栅格图层

r - 按 r 中的列对数据帧进行排序

r - 在 R 中的矩阵中找到最大值

r - 如何更新条件公式?