我看过一些关于我的问题的帖子,但我认为我的有点不同。我试图遵循解决方案,但都无济于事。
最初,我为 pivot_longer
的数据集做了一个 176 column
,当我做 summary(df)
时没有 NA。
pivot_longer
之后的数据集如下所示:
region transportation_type country date value
Albania driving Albania 2020-01-13 100.00
Albania driving Albania 2020-01-14 95.30
Albania driving Albania 2020-01-15 101.43
Albania driving Albania 2020-01-16 97.20
Albania driving Albania 2020-01-17 103.55
Albania driving Albania 2020-01-18 112.67
但是,我需要使用 country 和 region 分析 transportation_type 所以我用这个代码做了 pivot_wider
: >
p_wide <- mobilityTrendData %>%
group_by(transportation_type) %>%
mutate(row = row_number()) %>%
pivot_wider(names_from = transportation_type,
values_from = daily_result) %>%
select(-row)
注意:列名'value'已更改为'daily_result',并且数字已经来自scaled
列的value
结果如下:
> summary(p_wide)
region country date driving walking
Length:598230 Length:598230 Length:598230 Min. :-2.09 Min. :-2.1
Class :character Class :character Class :character 1st Qu.:-0.46 1st Qu.:-1.0
Mode :character Mode :character Mode :character Median : 0.00 Median :-0.3
Mean : 0.10 Mean :-0.4
3rd Qu.: 0.49 3rd Qu.: 0.1
Max. :25.60 Max. :10.6
NA's :80070 NA's :537880
transit
Min. :-2.1
1st Qu.:-1.4
Median :-0.8
Mean :-0.7
3rd Qu.:-0.1
Max. : 5.2
NA's :560490
我在驾驶、步行和公交的大部分行中都使用了NA。 是什么导致完全知道之前的数据集中没有 NA?
我该如何解决这个问题?
答案 0 :(得分:0)
假设您有一个日期和一个地区/国家组合,其中 driving
有一个值,但 walking
没有。然后当您 pivot_wider
时,您应该为 NA
设置 walking
。长数据集中没有 NA
,但实际上缺少一行。
关于如何解决这个问题:如果我正确理解了这个问题,那么修复不是问题,而是数据的一个特征。
PS:我不明白你为什么要执行 group_by()
操作,或者你为什么创建然后删除 row
变量。如果我错过了什么,我怀疑是 group_by()
对 pivot_wider()
的影响。