r - 将多项选择数据转换为数字
问题描述
我的数据如下所示:
+-------------+------------+------------------+-------------------+------------------+
| gender | age | income | ate_string_cheese | tech_familiarity |
+-------------+------------+------------------+-------------------+------------------+
| A. Female | D. 45-54 | B. $50K - $80K | B. Once or twice | A. Low |
| A. Female | C. 35-44 | A. $35K - $49K | B. Once or twice | B. Medium |
| B. Male | B. 25-34 | B. 50k - 79,999 | B. Once or twice | C. High |
| A. Female | A. 18-24 | D. $100k - $149k | B. Once or twice | B. Medium |
+-------------+------------+------------------+-------------------+------------------+
我想尝试找出不同观察结果之间的相关性。我需要这些值是数字的。我想知道在 R 中是否有一种简单的方法可以做到这一点?
为了清楚起见,上面的结果如下所示:
+--------+-----+--------+-------------------+------------------+
| gender | age | income | ate_string_cheese | tech_familiarity |
+--------+-----+--------+-------------------+------------------+
| 1 | 4 | 2 | 2 | 1 |
| 1 | 3 | 1 | 2 | 2 |
| 2 | 2 | 2 | 2 | 3 |
| 1 | 1 | 4 | 2 | 2 |
+--------+-----+--------+-------------------+------------------+
我假设必须为此提供一个软件包,但我找不到可以让人联想到它的 Google 咒语。请知道我是一个完整的统计新手,只是在四处闲逛。因此,如果您向我询问更多详细信息,我可能不会有一个有根据的答案来返回。
解决方案
要回答有关在 R 中将分类数据转换为数值数据的问题:
您可以将字符数据转换为factor
使用as.factor()
因子返回一个“因子”类的对象,该对象具有一组长度为 x 的整数代码,具有模式字符的“级别”属性。
优点:
- 这将使用映射字符值以供参考的属性对您的数据进行数字编码。
- 可以订购可以捕获有关序数数据的重要信息的因素(例如您的年龄范围)
缺点:
- 谨防将分类数据转换为数字,以便对数据进行统计分析。数值可能不在所有问题的区间或比率范围内,因此取平均值或水平之间的差异可能没有意义。例如,考虑每个级别之间的距离是否实际上是恒定的,它是否具有自然零点等。
推荐阅读
- .net - json newtonsoft 序列化记录合并
- c - GCC:在获取地址时取消引用“void *”指针
- kotlin - 如何使用 Koin 依赖注入 (Kotlin) 检索与给定类型匹配的所有实例
- java - 对字符串进行排序时,数组中的字符被删除
- c++ - OpenSSL - 通过代码生成的数字签名与命令行上生成的签名不匹配
- c - Code::Blocks:带有指针 FILE 参数的函数(和函数原型)出错
- html - 为什么div背景不透明?
- json - 如何通过 VB.net 传递一个复杂的 JSON 对象来调用 Rest API
- android - 设置 JSON 输入值动态
- python - 如何将 B 列转置为 DataFrame 中的 y 轴列