tidyr 中的 gather() 和 unite()
gather() and unite() in tidyr
我使用 tidyr 的 gather() 和 unite() 函数 运行 陷入困境。
这个例子是预期的输出
# sample Data
> wide_df
col A B C
1 X 1 2 3
2 Y 4 5 6
> gather(wide_df, my_key, my_val, -col)
col my_key my_val
1 X A 1
2 Y A 4
3 X B 2
4 Y B 5
5 X C 3
6 Y C 6
然而,使用我的实际数据,我得到了不同的结果。
# Actual Data
>Parents_Pulse_Survey
col Too_demanding Cost_Too_High Prefer_Stay_ParentHome
1 Austin NA NA Prefer_Stay_ParentHome
2 Austin Too_demanding NA NA
reasons <-gather(Austin_Parent_Pulse_Survey, reasonsWhy,High_Childcare_Cost:Other_Stay_At_Home)
然后我得到这个输出
reasons
# A tibble: 30,900 x 2
reasonsWhy `High_Childcare_Cost:Other_Stay_At_Home`
<chr> <chr>
1 Austin Yes
2 Austin Yes
3 Austin Yes
4 Austin Yes
5 Austin Yes
6 Austin Yes
我做错了什么?
我希望我的实际输出看起来像样例输出。
非常感谢您的帮助。
我想得到这种类型的输出
# Intended Output
reasons
Respondent Reasons
1 Austin High_Childcare_Cost
2 Austin Other_Stay_At_Home
3 Austin Too_demanding
4 Austin Too_demanding
5 Austin High_Childcare_Cost
6 Austin Other_Stay_At_Home
你必须写出你的调用方式(数据库,attribute_name,value_variable_name,你收集的列),看起来你没有命名 value_variable_name。以下是基于 iris
的示例
str(iris)
reasons <- gather(iris,
reasonsWhy, Value,
Sepal.Length:Petal.Width)
我使用 tidyr 的 gather() 和 unite() 函数 运行 陷入困境。
这个例子是预期的输出
# sample Data
> wide_df
col A B C
1 X 1 2 3
2 Y 4 5 6
> gather(wide_df, my_key, my_val, -col)
col my_key my_val
1 X A 1
2 Y A 4
3 X B 2
4 Y B 5
5 X C 3
6 Y C 6
然而,使用我的实际数据,我得到了不同的结果。
# Actual Data
>Parents_Pulse_Survey
col Too_demanding Cost_Too_High Prefer_Stay_ParentHome
1 Austin NA NA Prefer_Stay_ParentHome
2 Austin Too_demanding NA NA
reasons <-gather(Austin_Parent_Pulse_Survey, reasonsWhy,High_Childcare_Cost:Other_Stay_At_Home)
然后我得到这个输出
reasons
# A tibble: 30,900 x 2
reasonsWhy `High_Childcare_Cost:Other_Stay_At_Home`
<chr> <chr>
1 Austin Yes
2 Austin Yes
3 Austin Yes
4 Austin Yes
5 Austin Yes
6 Austin Yes
我做错了什么?
我希望我的实际输出看起来像样例输出。 非常感谢您的帮助。
我想得到这种类型的输出
# Intended Output
reasons
Respondent Reasons
1 Austin High_Childcare_Cost
2 Austin Other_Stay_At_Home
3 Austin Too_demanding
4 Austin Too_demanding
5 Austin High_Childcare_Cost
6 Austin Other_Stay_At_Home
你必须写出你的调用方式(数据库,attribute_name,value_variable_name,你收集的列),看起来你没有命名 value_variable_name。以下是基于 iris
的示例 str(iris)
reasons <- gather(iris,
reasonsWhy, Value,
Sepal.Length:Petal.Width)