问题标签 [experimental-design]

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 投票
3 回答
176 浏览

r - 行的唯一值

我经常遇到这样的数据:

行代表参与者,列 V1 到 V4 代表参与者所处的条件(例如,V1 下的 1 表示该参与者处于条件 1,V4 下的 1 表示该参与者处于条件 4)。旁注:数据不是对称的,因此有更多的参与者分布在 4 个条件下。

我想要的是每个参与者的条件向量:

我写了以下内容,但想知道是否有更有效的方法(即使用更少的代码行)?

0 投票
1 回答
50 浏览

python - 在反转列表的两种方法之间获得不一致的输出

我正在尝试运行一个反平衡程序。我无法理解 Python 正在做什么来获得我收到的输出。我有 16 张地图的 8 种变体。变体由timingConditions*定义distractionConditions。初始变量定义有 4 个关键部分:

  1. inst是一个包含所有 8 个变体 * 16 个按变体排序的实验地图的列表(这些地图实际上就像一个视频游戏地图)。这就离开了len(inst) = 128
  2. inst中细分为 8 个子列表conds。这些子列表中的每一个都代表特定变体的映射 1-16。子列表中的每个索引代表一个映射/变体组合。调用每个子列表的索引conds会清楚地显示这一点。
  3. 这 16 个地图分为 8 个列表,每个列表包含两个地图,在变量中定义MapGroups。这 8 个列表用于下面的矩阵。

  4. counterBalanceMatrix表示映射到条件分配的八个唯一平衡排序。中的每个主题range(1,9)都分配到这些行之一。行中的数字代表地图组。列(即索引排序)表示将变量分配给映射组。例如,counterBalanceMatrix[0][0]返回1,第一个索引对应第一个变量列的赋值SSTrue;第二个索引对应于MapGroups[0](将返回'0','15')。因此,所需的输出将是映射 0 和 15(或没有基于零的排序的 1 和 16)分配为 SS-True。你可以这样描绘:

    /li>

低于 的代码的预期输出,subject in range(1,9):将有每个 的一个实例MapGroup,以及每个变体的两个观察值(例如 SS-TRUE、LL-False 等)。在所有主题中,将对所有MapGroups和变体进行相同的观察。这部分代码按预期工作

这就是问题所在: 我想重复这个过程,但是被镜像了。也就是说,无论每个变量list in MapGroups最初分配什么,我都希望它被反转(例如,如果您收到MapGroups[0]为 True,那么我希望它们为 False。MapGroups[0]分配了 SS,现在它必须是 LL。

我最初的解决方案是反转counterBalanceMatrix并应用相同的循环。然而这并没有奏效:

输出不正确,例如:

但是,简单地反转 cond 数组确实解决了我的问题

我已经坐了三天了,我无法弄清楚为什么最初的反转解决方案没有产生所需的输出。

0 投票
1 回答
849 浏览

mysql - 用于跟踪实验数据的数据库设计

我正在设计一个数据库来记录实验结果。基本上,一个实验有几个输入参数和一个输出响应。因此,数据表将如下所示:

run_id parameter_1 parameter_2 ... parameter_n 响应

1………………

2………………

. . .

然而,这个表的结构不是决定性的,因为不同的实验有不同的列数。那么问题来了:当用户实例化一个实验时,动态创建数据表是个好主意吗?否则,什么是优雅的解决方案?谢谢。

0 投票
1 回答
161 浏览

ab-testing - 确定 A/B 测试的样本量,超过 2 个变体

如果我们想决定这样一个测试的样本量,我们应该使用什么 R 函数:

10 个广告,我们想通过测试来确定哪些广告的点击率最高。我们能够计算流量和点击次数。

0 投票
1 回答
353 浏览

python - 科学实验硬件同步

我是 python 以及科学实验设置的新手。我的实验设置包括向受试者展示一些用 Python 编程的视觉刺激。当受试者看着这些视觉刺激时,他们的眼睛数据将使用眼动仪(Pupil Labs)记录下来。Pupil Labs 是一个开源平台,它还提供了使用 TCP 套接字向服务器广播数据(即注视或眼球运动)的设施。

现在我计划记录所有数据,例如显示特定刺激的时间以及记录从服务器接收到的眼球运动数据。问题是同步这两件事,比如在特定时间显示一些“xyz”刺激,我想记录在那个特定时间眼睛数据到底是什么。

我正在用 Python 编写代码,到目前为止,发生的事情是有一个使用psychopy 库显示刺激的主程序。在那个主程序中有一个从服务器接收数据的线程。

我想知道如何同步这个任务。我对这样的任务很陌生,我也不确定通过互联网寻找什么。我会很感激你的帮助。

0 投票
1 回答
121 浏览

django - 如何将 Amazon Mechanical Turkers 列入候补名单?

我是一名社会心理学研究员。我开发了一款可以识别玩家特定行为因素的在线游戏。每个游戏都需要特定数量的玩家同时玩。此外,所有玩家都应通过筛选阶段,通过该筛选阶段,我们确定他们的技能,我的程序会匹配具有相似技能的玩家,让他们互相玩。

我的问题是如何让玩家通过筛选阶段并等待其他人通过筛选阶段才能开始游戏?MTurk 上有没有像候补名单这样的东西?同时参与一项典型研究的平均用户数是多少?是否可以让他们等到我们在等待名单中达到特定数量的玩家?

0 投票
2 回答
416 浏览

multithreading - 如何通过实验确定进程/线程的调度量?

只是为了阻止任何关于“你为什么需要知道这个??”的评论:这只是一个我很好奇的谜题,而不是我出于任何实际原因需要做的事情。

给定一个典型的 POSIX 系统[1],您将如何设计一个实验来确定 CPU 绑定进程的调度量[2]?

[1]:但不能让您通过系统调用或 /proc 接口查询此信息

[2]:“调度量子”定义为进程在其调度时间结束并且操作系统允许不同进程运行之前在 CPU 上运行而不会阻塞或让步的时间量。

0 投票
1 回答
277 浏览

recommendation-engine - 如何在推荐系统的在线实验中处理重复推荐

我即将运行一个在线用户实验来比较推荐系统的不同策略。我将比较 18 个策略,每个策略产生 5 个建议,因此我必须要求受试者总共评估 90 个建议。然而,这些策略提出了重复的推荐(即,一些推荐出现在多个策略中)。

(i) 在当前的设计中,每一页提供由一个策略提出的五项建议。在用户输入所有评价后,会出现另一个页面,其中给出了另一种策略的五个推荐。因此,用户有时会看到他已经评估过的推荐。我认为这种设计在以前的作品中被广泛使用,尽管尚未广泛讨论如何处理重复的推荐。

(ii) 还是先提取所有独特的推荐,将它们分成不同的页面,然后以随机顺序显示它们是否合理?我认为这种设计使实验更短。但据我所知,这种设计尚未被使用。

如果您有建议或知道与之相关的论文,请给我。

0 投票
0 回答
88 浏览

python - R 与 Statsmodels 中的混淆列 - Statsmodels 在所有别名之间拆分值

当我有一个带有混淆列的欠约束系统时,lm在 R 中会忽略许多第二和第三因素交互(对我来说这似乎是正确的行为),但 statsmodels(在 Python 中)会在所有混淆列之间拆分值。

想象一下,我有以下数据:

在 R 中使用lm('y ~ a * b * c')给了我以下系数:

  • 一、11
  • 乙,6
  • c, -6
  • 拦截,11

我可以'y ~ a + b + c'在 statsmodels 中得到它,但是产品版本通过 2+ 因子交互来拆分系数。(a 与 b:c,b 与 a:c,c 与 a:b,并与 a:b:c 截取。)

加法而不是乘法不适用于更复杂的情况,其中 R 发现了一些重要的两因素相互作用,但没有给出其他任何东西。

在这种情况下,如何使 statsmodels 像 R 一样工作?或者我该如何设置它以获得体面的结果?

一个 MWE:

当你这样做时:

你得到:

虽然这样:

给出:

0 投票
1 回答
1778 浏览

matlab - 在屏幕中央画一个点

我最近开始学习如何在 matlab 中编码,即为认知心理学调查编写简单的体验。我想问一下,是否有人知道这两者,如何定义,在屏幕上画一个点的位置,以及如何定义刺激开始前的注视时间。我知道,定义点位置的代码如下:

但是,我不知道,哪个坐标定义了屏幕的确切中间。先感谢您!