为了在数据集中查找和分析因果关系,可以使用什么方法?一个例子可能是这样的:
import matplotlib.pyplot as plt
import numpy as np
n1 = np.array([100, 100, 150, 150, 150, 100, 100, 100, 100])
n2 = np.array([100, 100, 100, 100, 120, 120, 120, 100, 100])
plt.plot(n1, label="feature1")
plt.plot(n2, label="feature2")
plt.legend()
plt.show()
在我们看到某些因果关系发生在特性1和一些迭代之后,feature2经历了某种效果。尺度可能不同,迭代可能略有不同,但从这样的图表上看,它们似乎与某种因果相关。
有任何方法可以通过编程来识别这样的东西吗?或者给它一个分数,通过因果关系他们可能是如何联系?
发布于 2021-01-16 23:49:00
用标准的统计工具识别数据中的相关性是可能的,并且可以通过编程来实现。相关性需要一个有代表性的样本,所以在单个图这样的情况下,它是不起作用的:您可能需要至少20-30个这样的图,才有机会自信地显示相关性。
找出原因(因果关系)要困难得多。据我所知,如果没有任何额外的知识,就不能从原始数据中进行这项工作。这仅仅是因为对于任何数据集,都无法知道某个外部变量在观测中是否起了因果作用。
因果关系的证明方法是通过一个特定的实验装置,即实验的设计,使收集到的数据易于证明因果关系。A/B测试是一种用于这种实验的方法。例如:假设我们想测试新药A是否对结果B有影响。设计实验,观察有代表性的病人样本中的反应变量B。将样本随机分成两组:第一组为对照组,给予安慰剂。第二组给药A,在实验结束时,当第二组结果与对照组有显着性差异时,才能证明其因果关系。
https://datascience.stackexchange.com/questions/88043
复制相似问题