r 将字符串填充到相同的长度

2024-02-10

经过几个小时的搜索应该很简单的内容后,我需要帮助。

我想做的事: 确保所有字符串都填充为相同的 26 个字符长度。

Dataset:

  library(stringr)

  names <-
  structure(list(
    names = c(
      "A",
      "ABC",
      "ABCDEFG",
      "ABCDEFGHIJKLMNOP",
      "AB",
      "ABCDEFGHI",
      "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
      "ABCDEFGHIJKL",
      "ABCDEFGHIJKLMNOPQR",
      "ABCDEFGHIJKLMNOP",
      "ABCDEFGHIJKLMNO"
    )
  ),
  class = "data.frame",
  row.names = c(NA,-11L))

步骤1: 查找最大字符长度和要填充的空格数:

max <- as.numeric(max(nchar(names$names)))
max

n <- as.numeric(nchar(names$names))
n

pad <- max - n
pad


#add columns to the dataset to check how many characters are to be padded for each name

names$max <- as.numeric(max(nchar(names$names)))
names$n <- as.numeric(nchar(names$names))
names$pad <- as.numeric(max - n)

第 2 步:垫

  names$names <-
  str_pad(names$names,
          pad,
          side = "right",
          pad = "0")

但这种方法似乎对我不起作用。有人能指出我正确的方向吗?我得到不同长度的字符串:

                        names max  n pad
1   A000000000000000000000000  26  1  25
2     ABC00000000000000000000  26  3  23
3         ABCDEFG000000000000  26  7  19
4            ABCDEFGHIJKLMNOP  26 16  10
5    AB0000000000000000000000  26  2  24
6           ABCDEFGHI00000000  26  9  17
7  ABCDEFGHIJKLMNOPQRSTUVWXYZ  26 26   0
8              ABCDEFGHIJKL00  26 12  14
9          ABCDEFGHIJKLMNOPQR  26 18   8
10           ABCDEFGHIJKLMNOP  26 16  10
11            ABCDEFGHIJKLMNO  26 15  11

帮助将不胜感激。


这里我们只需要

library(dplyr)
mx <- as.numeric(max(nchar(names$Name)))
names$Name <- str_pad(names$Name, mx, side = "right", pad = "0")
names$Name

-output

#[1] "A0000000000000000000000000" "ABC00000000000000000000000" "ABCDEFG0000000000000000000" "ABCDEFGHIJKLMNOP0000000000"
#[5] "AB000000000000000000000000" "ABCDEFGHI00000000000000000" "ABCDEFGHIJKLMNOPQRSTUVWXYZ" "ABCDEFGHIJKL00000000000000"
#[9] "ABCDEFGHIJKLMNOPQR00000000" "ABCDEFGHIJKLMNOP0000000000" "ABCDEFGHIJKLMNO00000000000"

注意:最好不要使用函数名或参数名来命名对象

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

r 将字符串填充到相同的长度 的相关文章

  • 将“dplyr::across”与具有多个参数的函数一起使用

    我想知道是否有办法使用dplyr across一个需要多个参数的函数 如果没有 如何执行以下操作dplyr tidyverse library dplyr create a dataframe df lt structure list x1
  • 将时间值转换为数字,同时保留时间特征

    我有一个数据集 其中包含不同事件发生的间隔时间 我想要做的是将数据转换为数字向量 以便更容易操作和运行摘要 制作图表等 同时保持其时间特征 这是我的数据片段 data lt c 03 31 12 17 16 29 09 52 04 01 0
  • 将值排列在特定组内

    我试图在嵌套数据帧的精确组内按降序排列值 我的输入数据如下所示 我有两个分组变量 group1 and group2 和三个值 即id value2 value3 library tidyverse set seed 1234 df lt
  • 在 R 中创建 xlsx 工作表 - 字体颜色不起作用

    我正在开发一个项目 需要从特定类型的数据框架自动生成数据电子表格 我读过关于如何执行此操作的有用解释here http www sthda com english wiki r xlsx package a quick start guid
  • 使用 dplyr 创建 t.test 表?

    假设我有如下所示的数据 set seed 031915 myDF lt data frame Name rep c A B times c 10 10 Group rep c treatment control treatment cont
  • Java .split("|") 不工作

    我刚刚遇到了一个问题分割法 http docs oracle com javase 6 docs api java lang String html split 28java lang String 29for 字符串不适用于字符 作为一个
  • R 计算股票的 beta(使用 PerformanceAnalytics CAPM.beta() 函数或 lm() 函数产生意外结果)

    我正在尝试使用 PerformanceAnalytics CAPM beta 函数量化 R 中股票的 beta 基准测试与 SPY 结果甚至与我在 Yahoo Google Finance 在线看到的值不接近 代码 require Perf
  • 如何从线性模型 (lm) 预测 x 值

    我有这个数据集 x lt c 0 40 80 120 160 200 y lt c 6 52 5 10 4 43 3 99 3 75 3 60 我使用计算了一个线性模型lm model lt lm y x 我想知道的预测值x如果我有新的y值
  • 移动 sf 对象的经度

    我有一张国家地图 sf 对象 我想改变俄罗斯东部的经度 以便它不与俄罗斯其他地区隔离 看图片 https i stack imgur com NBjyK jpg 我找到了后端代码st shift longitude https github
  • 如何找到连续数字的区间开始和结束的位置?

    我有一个向量 vec lt c 2 3 5 6 7 8 16 19 22 23 24 连续的数字是 c 2 3 c 5 6 7 8 c 22 23 24 所以第一个向量从 2 开始 到 3 结束 第二个向量从 5 开始 到 8 结束 对于第
  • R中的函数重新排序和排序值[重复]

    这个问题在这里已经有答案了 我正在尝试以下功能 stest lt data frame group c John Jane James mean c 3 5 1 transform stest group reorder group mea
  • 如何使用 by 并将所有列暴露给该函数将函数应用于 data.table 的子集?

    当切片一个data table按组划分 用于对数据进行切片的变量在函数执行期间不在子集中 我用以下方法演示了这一点debugonce library data table x lt data table a rep letters 1 4
  • 从 R 中的函数绘制到文件

    背景 嘿大家 我是 R 的新手 在一位团队成员提供了关于 R 在学术环境中的有用性的教程后 我对使用它产生了兴趣 我正在尝试编写一个脚本来自动从多个文件中读取数据 然后将结果图表绘制到多个文件中 以便可以轻松地将它们添加到手稿中 Power
  • 使用 dplyr 对 R 中所有因变量进行分组汇总统计

    我正在尝试为 10 个因变量中的每一个生成分组 听力 我的自变量 因此 HL 和 NH 是两个组 汇总统计数据 平均值 标准差 最小值 最大值 标准误差等 我可以使用以下 2 个代码对一个变量 R PTA 执行此操作 1 RightPTA
  • String.Format - 它如何工作以及如何实现自定义格式字符串

    With String Format 例如可以格式化DateTime对象以许多不同的方式 每次我寻找所需的格式时 我都需要在互联网上搜索 我几乎总能找到一个可以使用的例子 例如 String Format 0 MM dd yyyy Date
  • merge.zoo 删除时区

    的结果merge zoo与其输入的时区不同 考虑下面的例子 library zoo zoo a zoo data frame a 1 5 seq as POSIXct 2014 01 01 00 00 01 tz UTC as POSIXc
  • ggplot2极坐标图轴标签位置

    This is just a extension for a old question ggplot2 polar plot arrows https stackoverflow com questions 10515703 ggplot2
  • RStudio 服务器未启动

    过去几个月我一直在远程 RStudio 服务器上工作 没有任何问题 今天 我使用此命令重新启动了 rstudio 服务器 sudo rstudio server restart 此后 我无法通过浏览器访问服务器 它继续等待 我用这个检查了状
  • 如何在C中递归地找到另一个字符串中的字符串位置?

    我们有一个任务来创建带有两个字符串参数的递归函数 原型应该是这样的 int instring char word char sentence 如果我们愿意调用函数 instring Word Another Word 它应该具有以下返回值
  • 泛化 R %in% 运算符以匹配元组

    前几天我花了一段时间寻找一种方法来检查行向量是否包含在 R 中的某些行向量集中 基本上 我想概括 in 运算符来匹配元组而不是向量中的每个条目 例如 我想要 row vec c A 3 row vec 1 A 3 data set rbin

随机推荐