如何从数据框中的列中提取数字并将它们添加到新列中
How to extract numbers from a column in a data frame and add them in a new column
我有一个名为 df
的数据框,它有一列 (Today's price
) 作为字符串值。
这是该专栏的摘录:
Today's price
MUR 15,265
MUR 20,000
MUR 9,841
我的数据框 (df) 中需要一个名为“价格”的新列(从“今日价格”列中提取),如下所示:
Price
15265
20000
9841
这是我所做的,我得到的所有记录都是“NA”,它没有创建“价格”列。
df %>%
mutate(Price = as.integer(str_extract("Today's price", "[0-9]+")))
我正在使用 dplyr
和 stringr
库。
我哪里错了?
我们可以使用 parse_number
library(dplyr)
library(readr)
df %>%
mutate(Price = parse_number(`Today's price`)) %>%
select(-`Today's price`)
更短:
df %>%
mutate(Price = parse_number(`Today's price`), .keep = "unused")
输出:
Price
<dbl>
1 15265
2 20000
3 9841
我有一个名为 df
的数据框,它有一列 (Today's price
) 作为字符串值。
这是该专栏的摘录:
Today's price
MUR 15,265
MUR 20,000
MUR 9,841
我的数据框 (df) 中需要一个名为“价格”的新列(从“今日价格”列中提取),如下所示:
Price
15265
20000
9841
这是我所做的,我得到的所有记录都是“NA”,它没有创建“价格”列。
df %>%
mutate(Price = as.integer(str_extract("Today's price", "[0-9]+")))
我正在使用 dplyr
和 stringr
库。
我哪里错了?
我们可以使用 parse_number
library(dplyr)
library(readr)
df %>%
mutate(Price = parse_number(`Today's price`)) %>%
select(-`Today's price`)
更短:
df %>%
mutate(Price = parse_number(`Today's price`), .keep = "unused")
输出:
Price
<dbl>
1 15265
2 20000
3 9841