问题标签 [dummy-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.

0 投票
2 回答
472 浏览

r - 在 R 中生成虚拟网店数据:在随机生成交易时结合参数

对于我目前正在学习的一门课程,我正在尝试构建一个虚拟交易、客户和产品数据集,以展示网店环境中的机器学习用例以及财务仪表板;不幸的是,我们没有得到虚拟数据。我认为这是提高我的 R 知识的好方法,但在实现它时遇到了严重的困难。

这个想法是我指定了一些参数/规则(任意/虚构,但适用于某种聚类算法的演示)。我基本上是在尝试隐藏一个模式,然后利用机器学习重新找到这个模式(不是这个问题的一部分)。我隐藏的模式基于产品采用生命周期,试图展示如何识别不同的客户类型用于有针对性的营销目的。

我将展示我在寻找什么。我想让它尽可能真实。我试图通过将每个客户的交易数量和其他特征分配给正态分布来做到这一点;我完全愿意接受其他潜在的方法来做到这一点?

下面是我走了多远,先建一张客户表:

接下来,生成一个可供选择的产品表:

现在我想根据当前相关的每个变量的以下参数生成 n 笔交易(数字在上面的客户表中)。

这个想法是“EarlyAdopters”将(平均而言,正态分布)10% 的交易带有标签“BySearchEngine”、60% 的“ByDirectCustomer”和 30% 的“ByPartnerBlog”;这些值需要相互排除:无法通过 PartnerBlog 和最终数据集中的搜索引擎获得。选项包括:

此外,我想使用上述方法生成一个正态分布的折扣变量。为简单起见,标准偏差可以是平均值/5。

接下来,我最棘手的部分,我想根据一些规则生成这些交易:

  • 几天内分布均匀,周末可能稍微多一些;
  • 分布于 2006-2014 年间。
  • 多年来分散客户的交易数量;
  • 客户不能购买尚未发布的产品。

其他参数:

CustomerID 2 的结果将是:

我对编写 R 代码越来越有信心,但是我在编写代码以保持全局参数(交易的每日分布,每个客户每年最多 # 笔交易)以及各种链接保持一致时遇到了困难:

  • 时效性:发布后人们购买的速度有多快
  • ReferredBy:该客户是如何访问我的网站的?
  • 客户有多少折扣(说明一个人对折扣有多敏感)

这使我不知道我是否应该在客户表上编写一个 for 循环,为每个客户生成事务,或者我是否应该采取不同的路线。非常感谢任何贡献。替代的虚拟数据集也是受欢迎的,尽管我渴望通过 R 来解决这个问题。随着我的进步,我会不断更新这篇文章。

我当前的伪代码:

  • 使用 sample() 将客户分配给客户类型
  • 生成 Customers$NumBought 交易
  • ... 仍然在想?

编辑:生成事务表,现在我“只”需要用正确的数据填充它:

0 投票
2 回答
446 浏览

r - 如何根据不同数据帧中的时间间隔插入“事件虚拟”(?)

我有一个数据框,它为不同国家/地区提供事件的开始和结束日期。每个国家(例如 A 国)的事件可以发生多次。

我有第二个数据框,它采用时间序列横截面格式(年/国家/地区/事件(是/否)。

我怎样才能得到下面的结果(为笨拙的演示道歉)。当年份介于第一个数据帧的开始年份和结束年份之间时,事件应为“1”;每个国家;第二个数据帧已经存在,这意味着我不想转换第一个数据帧,而是将第一个数据帧的信息匹配(?)到第二个数据帧。

我试过

但得到“较长的对象长度不是较短对象长度的倍数”作为错误消息。感谢任何提示/建议!

结果旨在:

0 投票
3 回答
6882 浏览

for-loop - 在Stata中使用for循环(foreach)计算年份虚拟变量

我正在尝试为 1996 年到 2012 年(含)的每一年生成一个虚拟变量,这样如果是 1996 年,则 1996 年的虚拟变量应该等于 1,如果使用foreachStata 中的命令来缩短时间(至少对于未来的项目),则应该等于 0 )。目前正在发生的情况是正在生成 1996 年的虚拟模型,但没有生成其他模型。我认为这与我的定义方式有关j,但我无法完全弄清楚格式以达到我想要的结果。我在网上和 Stata 帮助文件中查看过,找不到关于这个特定主题的任何内容。

到目前为止,这是我所拥有的:

我将继续尝试自己解决这个问题,但如果有人有建议,我将不胜感激。

0 投票
1 回答
1827 浏览

r - 套索,glmnet,数据预处理

我试图使用 glmnet 包在具有二进制结果(logit)的模型上拟合套索(L1 惩罚)。我的预测变量都是二进制的(它们是 1/0 未排序的,~4000),除了一个连续变量。我需要将预测变量转换为稀疏矩阵,因为它需要永远和一天。我的问题是:似乎人们正在使用 sparse.model.matrix 而不仅仅是将他们的矩阵转换为稀疏矩阵。这是为什么?我需要在这里做吗?两种方法的结果略有不同。

另外,我的因子是否需要编码为因子(当涉及到结果和预测变量时)或者使用稀疏矩阵并在 glmnet 模型中指定结果是二项式就足够了?

这是我到目前为止所做的

所以总结我的两个问题是:1-即使我的因子只是二进制而不是有序的,我是否需要使用 sparse.model.matrix?[如果是的话,它实际上与仅将矩阵转换为稀疏矩阵有什么不同] 2-我需要将二进制变量编码为因子吗?我问的原因是我的数据集很大。无需编码即可节省大量时间。

0 投票
1 回答
3919 浏览

string - Stata - 如果列表的任何字符串变量以特定字符开头,则生成一个虚拟变量

我正在尝试在Stata中创建虚拟变量,如果任何变量dx1dx25特定字符串开头,则为1。我知道我可以使用以下内容来执行此操作,但对于所有 25 个dx变量:

dx然后,如果任何s 以这些开头,我将创建其他等于 1 的虚拟对象:

我一直在试图找出一种更有效、更优雅的方法来做到这一点。

数据结构示例(出于篇幅原因,我将在此处保留它dx1) :dx5

0 投票
1 回答
125 浏览

r - ggplot 仅在同一图表上绘制 1 为 MQC 删除 0

假设我有 1 个问题,有 8 个选项。受访者可以选择最少 1 个选项和最多 2 个选项。我为每个选择编写了一个假人。

现在很容易使用 ggplot 绘制 8 个图形,其中每个图形包含是和否条形图。但是我的问题是如何使用 ggplot 来创建一个删除所有否并只保留是的图(所以在我的情况下,图表应该有 8 个是栏)

0 投票
2 回答
228 浏览

r - 长面板中具有时间和 id 条件的虚拟变量

我正在尝试将虚拟变量添加到具有时间、id 和许多其他变量的面板数据集中。

实际上有 20 个国家和 97 个季度。我不会一个一个地解决'geo'元素,但是(时间> 2004Q1)例如会很棒

我想要一个从 1990 年第二季度开始的奥地利和德国的假人。所以我想到达:

我无法接近,我正在考虑stata逻辑(如果是这样,则生成变量,这是别的东西)但我在R中最接近的是创建单独的国家假人,然后将每个与时间变量和子集绑定它们在时间变量上,然后提取所有单个虚拟对象并将它们添加在一起,然后再将其与我的原始数据绑定。这不可能接近最佳解决方案(并且不完全有效),因为它大约有 40 行代码......这应该很容易做到,不是吗?

任何帮助都会很棒!

ps:我的尝试是这样的:

但我认为我走错了方向,我无法正确获得时间维度......

0 投票
1 回答
1200 浏览

jakarta-ee - 使用贝宝创建一个虚拟支付网关

截图

我想制作一个虚拟支付网关来测试我的项目。我通过 google 了解了 paypal 沙盒帐户。关于创建买家/卖家帐户进行测试。但找不到任何创建开发者帐户的选项。我所包含的屏幕截图来自我访问的不同注册页面。但所有这些都需要一个强制性的州、城市、邮政编码和电话号码。而且由于我是该表格的非美国用户,因此没有列出我的城市。

有什么建议么?

0 投票
1 回答
612 浏览

sas - Create a dummy variable based on the number of variable appearances using SAS

I am trying to create a dummy variable A to indicate the number of ID appearances. If ID appears exactly twice, then A equals 0; if ID appears more than 2 times, then A equals 1.

My desired output is as follows:

My code is:

But the output is incorrect.

0 投票
2 回答
191 浏览

sas - 如何使用 SAS 创建虚拟变量以指示两个值相同

我的数据看起来像:

我想创建两个虚拟变量 new 和 X,场景如下:在每个 ID-B 对中(一对是 2 个观察值,一个B=0和另一个B=1YEAR顺序排列在一起)

  1. 如果B=1对于 A 的观察值为 1,那么new=1对于该对中的两个观察值,否则对于该对中的两个观察值都是 0,并且
  2. 如果该对在 A 中具有相同的值,则X=0如果它们具有不同的值,则X=1.

因此,输出将是:

我的代码是

第一个不起作用,第二个对变量 B 重新排序。我被困在这里。任何帮助将不胜感激。