【发布时间】:2018-07-11 02:54:21
【问题描述】:
我有一个 df,其中有一列是我从 csv 读取 if 时的一个因素。
Month_considered pct ATC_Count
<fct> <dbl> <fct>
1 Apr-17 54.9 198,337
2 May-17 56.4 227,681
3 Jun-17 58.0 251,664
4 Jul-17 57.7 251,934
5 Aug-17 55.5 259,617
6 Sep-17 55.7 245,588
7 Oct-17 56.6 247,051
8 Nov-17 57.6 256,375
9 Dec-17 56.9 277,784
10 Jan-18 56.7 272,818
11 2/1/18 59.1 266,277.00
> sapply(ab, class)
Month_considered pct ATC_Count
"factor" "numeric" "factor"
当我尝试将 ATC_Count 转换为整数时,我得到以下输出,其中 ATC_Count 显示不同的值。这里可能有什么问题。
ab$ATC_Count <- as.integer(ab$ATC_Count)
Month_considered pct ATC_Count
<fct> <dbl> <int>
1 Apr-17 54.9 36571
2 May-17 56.4 37325
3 Jun-17 58.0 37780
4 Jul-17 57.7 37781
5 Aug-17 55.5 37885
6 Sep-17 55.7 37682
7 Oct-17 56.6 37714
8 Nov-17 57.6 37855
9 Dec-17 56.9 38099
10 Jan-18 56.7 38060
11 2/1/18 59.1 37990
【问题讨论】:
-
使用
as.integer(as.character(ab$ATC_Count)顺便说一句,ATC_Count中有一个,,所以你可能需要删除它并转换它as.integer(sub(",", "", ab$ATC_Count))或使用tidyverse,ab %>% mutate(ATC_Count = as.integer(str_remove(ATC_Count)))跨度> -
使用
as.numeric(gsub(',',"",ab$ATC_Count)) -
当我执行 as.integer(as.character(ab$ATC_Count)) 时,我得到了强制引入的 NAs
-
是的,因为有
,请阅读完整评论