- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我确信之前已经研究过这个主题,我不确定它叫什么或者我还应该研究什么技术,因此我为什么在这里。我主要在 Python 和 Pandas 中运行它,但它不仅限于这些语言/技术。
举个例子,让我们假设我有这个数据集:
| PID | A | B | C |
| --- | ---- | ---- | ---- |
| 508 | 0.85 | 0.51 | 0.05 |
| 400 | 0.97 | 0.61 | 0.30 |
| 251 | 0.01 | 0.97 | 0.29 |
| 414 | 0.25 | 0.04 | 0.83 |
| 706 | 0.37 | 0.32 | 0.33 |
| 65 | 0.78 | 0.62 | 0.25 |
| 533 | 0.24 | 0.15 | 0.88 |
PID 是该行的唯一 ID。 A、B 和 C 是一些因素(针对此示例进行了标准化)。该数据集可以是历史上体育联盟中的球员,可以是库存中的产品,也可以是选民数据。具体的上下文并不重要。
| A | B | C |
| ---- | ---- | ---- |
| 0.81 | 0.75 | 0.17 |
此输入与原始数据集(A、B、C)共享相同的因素。我想要做的是找到与我的输入数据(“同类群组”)相似的行。解决这个问题的最佳方法是什么?
my_cols = ['A', 'B', 'C']
inputdata = pd.Series([0.81, 0.75, 0.17], index=['A', 'B', 'C'])
# df = pandas data frame with above data
df['Dict'] = (df[my_cols] - inputdata).pow(2).sum(1).pow(0.5)
这将在数据集上创建一个新列,例如:
| PID | A | B | C | Dist |
| --- | ---- | ---- | ---- | ---- |
| 508 | 0.85 | 0.51 | 0.05 | 0.27 |
| 400 | 0.97 | 0.61 | 0.30 | 0.25 |
| 251 | 0.01 | 0.97 | 0.29 | 0.84 |
| 414 | 0.25 | 0.04 | 0.83 | 1.12 |
| 706 | 0.37 | 0.32 | 0.33 | 0.63 |
| 65 | 0.78 | 0.62 | 0.25 | 0.16 |
| 533 | 0.24 | 0.15 | 0.88 | 1.09 |
然后,您可以“过滤”出低于某个阈值的那些行。
cohorts = df[df['Dist'] <= THRESHOLD]
那么问题就变成了 (1) 您如何确定最佳阈值? (2) 如果我在数据集和 Euclid 计算中添加第 4 个因子(“D”),它似乎“破坏”了结果,因为从结果来看,队列不再具有直观意义。
最佳答案
这是我通过逻辑思维和一些基本统计得出的算法。它使用 mean
输入数据的值和平均值,以根据 standard deviation
找到最接近的匹配项使用 pd.merge_asof
:
factors = ['A', 'B', 'C']
df = df.assign(avg=df[factors].mean(axis=1)).sort_values('avg')
input_data = input_data.assign(avg=input_data[factors].mean(axis=1)).sort_values('avg')
dfn = pd.merge_asof(
df,
input_data,
on='avg',
direction='nearest',
tolerance=df['avg'].std()
)
PID A_x B_x C_x avg A_y B_y C_y
0 706 0.37 0.32 0.33 0.340000 NaN NaN NaN
1 414 0.25 0.04 0.83 0.373333 NaN NaN NaN
2 251 0.01 0.97 0.29 0.423333 NaN NaN NaN
3 533 0.24 0.15 0.88 0.423333 NaN NaN NaN
4 508 0.85 0.51 0.05 0.470000 NaN NaN NaN
5 65 0.78 0.62 0.25 0.550000 0.81 0.75 0.17
6 400 0.97 0.61 0.30 0.626667 0.81 0.75 0.17
关于python - 从数据集中过滤非 -'cohorts',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64174389/
我找不到任何方法可以对 Firebase 控制台上显示的同类群组应用过滤器。由于各种原因,例如特定应用程序版本或应用程序语言的用户保留等,我需要过滤器。那么,有没有办法通过 Firebase 控制台实
我确信之前已经研究过这个主题,我不确定它叫什么或者我还应该研究什么技术,因此我为什么在这里。我主要在 Python 和 Pandas 中运行它,但它不仅限于这些语言/技术。 举个例子,让我们假设我有这
Firebase 通过 Firebase 远程配置提供拆分测试功能,但无法过滤具有用户属性(实际上具有任何属性)的同类群组部分中的保留。 为了寻求这个问题的解决方案,我正在寻找 BigQuery,因为
队列列出维度和指标 here .然而,当我尝试使用 API 查询它时(例如使用 Query Explorer )会发生错误 400。 我试过的查询之一是:metrics = ga:cohortActi
无法在维度和指标资源管理器中找到同类群组维度或用户获取日期以将数据馈送到 Google Script .gs ( https://developers.google.com/analytics/dev
我是一名优秀的程序员,十分优秀!