【问题标题】:R - Removing parts of value [duplicate]R - 删除部分价值[重复]
【发布时间】:2015-04-08 13:32:27
【问题描述】:

我有以下数据框: 假设数据框的名称是“test”。

        Persnr    Date AmountHolidays
1    55312 X201101            0.0
2    55316 X201101            3.0
3    55325 X201101            0.0
4    76065 X201101            0.0
5    71928 X201101            1.0
6    72558 X201101            0.5
7    73045 X201101            0.0
8    77214 X201101            0.5
9   121216 X201101            2.0
10   71951 X201101            0.0
11   55312 X201102            0.0
12   55316 X201102            3.0
13   55325 X201102            0.0

我想删除日期值前面的所有 X。我已经尝试过 sub 函数,但它以纯文本而不是数据框返回数据.. 这是我尝试过的:

dx<-sub("X(\\d{6})","\\1",test)

【问题讨论】:

  • 试试test$Date &lt;- sub("^X","",test$Date))
  • 感谢您的意见。但是,我想保持描述中所示的数据框。只有日期列中的值需要稍作更改。
  • 我已经解决了我的问题。在我的第一个导入函数中,所有日期都是行名。我首先在 Transpose 函数之前用colnames(test)&lt;-sub('X(\\d{6})','\\1', colnames(test)) 删除了 Xs。这样,我不需要编辑这些值,因为列标题中的所有 X 都已被删除。之后,我转置了它,瞧。完毕。我想我的大脑睡着了。对不起各位!

标签: r dataframe substitution


【解决方案1】:

你可以这样做:

require(stringr)
df$Date <- str_replace(df$Date,"X","")

将您的数据存储在数据框 df 中,并将 Date 列中的每个 X 替换为任何内容,您将获得所需的内容。

【讨论】:

    猜你喜欢
    • 2020-11-16
    • 1970-01-01
    • 2021-12-03
    • 1970-01-01
    • 1970-01-01
    • 2019-11-02
    • 1970-01-01
    • 2016-08-16
    • 1970-01-01
    相关资源
    最近更新 更多