问题标签 [categorical-data]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - R:从一系列类别中随机抽取偶数个观察值
我之前从我的数据框中随机抽取了一个邮政编码样本,然后意识到我没有对所有更高级别的统计单位进行抽样。我有大约 100 万个邮政编码和 7000 个中间输出统计单位。我希望样本在每个统计单元中具有大致相同数量的邮政编码。
如何从每个更高级别的统计单元中随机抽取 35 个邮政编码?
我之前使用以下代码随机抽样了 250,000 个邮政编码:
如何根据另一个列变量(例如更高级别的统计单位(参见下面数据框结构中的 msoa.rank))指定邮政编码的随机样本配额?
数据库结构:
pcd = 邮政编码
msoa.rank = 每个中间输出统计单元的序数变量
r - R 因子的外积 - 自定义映射 - 太慢了
给定两个因素(每个因素都有相同的水平),比如说
我想使用他们的外部产品,具有自定义产品功能,定义如下:
预期输出(对于大大减少的测试用例)应该是这样的
这行得通,但在全范围内它慢得令人不快:
谁能推荐一个更快的方法?如果有帮助,映射矩阵保证是三角形的(即mapping[a,b] == mapping[b,a]
∀ a,b。)
r - 导入 csv 文件:因子而不是数字。从列表中检索字符串向量
i) 我正在导入为数字的 csv 文件,现在可以作为列表 L. 从应用
我知道我的数字现在是因素。为什么是这样?我用了几次,我总是得到一个数字列表。现在重要的问题是:如何在不丢失列表结构(即成员名称)的情况下将这些因素转换为数字?
ii) 给定列表 L 为
假设我们只有结果列表 L。如何从 L 中检索字符串向量 c("A","B","C")?
非常感谢!
r - 当 y 不是一个因素时,R 的插入符号训练错误
我正在使用 R-studio 并且正在使用 kaggle 的森林覆盖数据,并且在尝试在插入符号中使用 knn3 函数时不断出现错误。这是我的代码:
最后一行在控制台中给了我这个:
python - Sklearn中的数字分类变量
我有点好奇 sklearn 如何处理由数字表示的分类变量,例如纽约 = 1 波士顿 = 2 芝加哥 = 3。python会知道这是分类的还是只是将其视为有序数字?我在这里看到一个帖子讨论这个问题。我不知道它是否正确。
另外我不知道是否应该将它们全部更改为稀疏矩阵格式,例如
当应用于 sklearn 库时,这两种格式有什么区别?
如果 sklearn 不能很好地处理分类变量,R 会为此击败它吗?
谢谢!
更新:
我看到了@larsmans 推荐的重复问题,但它实际上并没有就这篇文章中的答案回答我的问题,它说 sklearn 不能很好地处理分类变量以及它与 R 中的包相比如何。之前也看过一些帖子,大数据集没问题,但会影响小数据集。从@larsmans看来,除了树算法外,其他方法应该将数字分类变量转移到假人。实际上,每个变量都有 3000 多个类别。我不认为使用 DictVectorizer 或 oneHotEncoder 将它们全部更改为稀疏矩阵是一种有效的方法。
r - 如何自动将整数变量编码为因子?
我正在处理我想视为因素的预测变量。不幸的是,代表多项选择题答案的数据存储为整数,因此当我拟合线性模型时,R 将这些数据视为数字预测变量而不是因子。我不想factor(x)
每次都打字;我将如何自动将预测变量编码为因子变量?
我可能拥有的数据示例:
期望的任务:告诉 R 而不必输入lm(response ~ factor(a) + b)
预测变量a
应该被视为因子变量。也许我需要遍历每一列并保存为一个因子,然后传递给lm
? 也许我可以传递一些东西lm
?尝试不同的东西...
python-2.7 - 在大型数据集上将字符串转换为数字的快速方法
我有一个包含数千万行的数据集。此数据上的几列代表分类特征。这些功能的每个级别都由一个字母数字字符串表示,例如“b009d929”。
我希望能够使用 Python 将每个不同的级别映射到一个数字以节省内存。因此,功能 C1 的级别将被替换为 1 到 C1_n 的数字,C2 的级别将被替换为从 1 到 C2_n 的数字......每个功能都有不同的级别数,范围从 10 到 10k+。我用 Pandas 的 .replace() 尝试了字典,但它变得非常慢。解决这个问题的快速方法是什么?
r - 在 R 中使用 mlogit 计算边际效应
我在 Cross Validated 上问过这个问题,但我认为我可能得不到帮助,因为这更像是一个编程问题,而不是对统计数据的理论/解释。
我正在尝试mlogit
在 R 中使用该包,并且一直在关注小插图,试图弄清楚如何获得我的数据的边际效应。提供的示例使用连续变量,但我想知道如何使用分类解释变量来做到这一点。
我的风险值作为协变量是连续的,但我也有年龄、阶级和性别作为协变量。我想看看“女性”或“年轻女性”在风险方面的边际效应。我该怎么做?
帮助文档说:
我不确定如何操纵z
数据框来获得女性或年轻女性的平均风险,然后才能计算边际效应。我会分开做吗?我是否以某种方式将数据框按年龄类别划分(比如我只有 2 个年龄类别:年轻人和老年人),这样我就有 1 个年轻人数据框和一个单独的新数据框用于老年人,然后计算平均风险?
我希望从我自己的数据中得到的是能够解释产生我的后代类别的可能性的大小。举个例子,我想说的是,如果风险增加 1 个单位,那么年长的雌性产生 2 个后代的可能性会增加 10%。由于风险增加 1 个单位,年轻女性生育 2 个后代的可能性增加 15%。
我不确定如何手动计算边际效应,因此对如何获得一个包来为我做这件事感到困惑。我也一直在nnet
图书馆或图书馆尝试VGAM
,但这些似乎都没有提供很大的帮助。
r - 当我运行分位数回归时,为什么 R 会从因子变量中删除因子?
我目前正在使用 Roger Koenker 的quantreg
包在 R 中运行分位数回归模型。我有一个有五个级别的有序分类变量和三个无序分类变量(星期几、季节以及是否是夜间),分别有七个、四个和两个类别。除了有序的分类变量(从 1 到 5 有五个级别)之外,所有最初都作为字符串存储在数据框中。这是我将前面提到的变量编码为因子的方式。请注意,之所以调用我的变量,是df_prime
因为它是带有一些修剪行的原始数据框:
当我运行回归时,它完全从摘要和我的 acuity_id 的一个级别中删除了 Friday,这是我的有序变量。这可能与 R 如何创建虚拟变量有关吗?我注意到无论出于何种原因,seasonWinter 的 p 值为 1。
我的输出如下,尽管间距不同,因为我的工作场所在 VM 上有 R,我无法复制和粘贴:
categorical-data - 排序数据后,对其他变量进行升序排序
我还处于 R 的初级水平,所以我很难制作一个叫做“千层面图”的情节。为此,我需要首先按分类值对我的数据进行排序。但在此之后,我没有兴趣在此之后保持数据单独绑定......简而言之,我希望数据在组内使用。也许这个例子可以澄清一点:
数据看起来像这样,(我附上了一张图片,因为我不知道如何附上数据文件):
每一行都是一个人连续十年的数据。我现在想按类别 VT 对它们进行排序。在此之后,我希望每年的数据都在上升。再说一遍:它不需要受人(行)的约束,只受他们的 VT 状态约束。
我已经尝试过这些事情:
但在这里它仍然与 VT 状态无关。我尝试过的另一件事是使用 split 函数并将其转换回来。我知道非常迂回,但它以“chr”的形式返回数据,我不知道它的含义或如何将其转换为整数值。