如何在python中获得表之间的相关性?

如何在python中获得表之间的相关性?,python,pandas,jupyter,correlation,Python,Pandas,Jupyter,Correlation,我正在尝试获取表之间的关联(csv),有什么方法可以用python实现吗?如果不是,我该怎么做才能得到我的表之间的相关性?我的表包括棕榈油、黄金、美元idr、石油和更多的价格。提前谢谢,如果我的问题很难理解,很抱歉! 这是我的表格,实际上所有表格都包含300个数据 棕榈油 month price change 0 Aug 1995 616.00 - 1 Sep 1995 586.00 -4.87 % 2 Oct 19

我正在尝试获取表之间的关联(csv),有什么方法可以用python实现吗?如果不是,我该怎么做才能得到我的表之间的相关性?我的表包括棕榈油、黄金、美元idr、石油和更多的价格。提前谢谢,如果我的问题很难理解,很抱歉! 这是我的表格,实际上所有表格都包含300个数据

棕榈油

        month     price    change
0    Aug 1995    616.00         -
1    Sep 1995    586.00   -4.87 %
2    Oct 1995    615.00    4.95 %
3    Nov 1995    607.00   -1.30 %
4    Dec 1995    590.00   -2.80 %
5    Jan 1996    535.00   -9.32 %
6    Feb 1996    518.00   -3.18 %
7    Mar 1996    519.00    0.19 %
8    Apr 1996    562.00    8.29 %
9    May 1996    552.00   -1.78 %
10   Jun 1996    508.00   -7.97 %
11   Jul 1996    476.00   -6.30 %
12   Aug 1996    513.00    7.77 %
13   Sep 1996    545.00    6.24 %
14   Oct 1996    532.00   -2.39 %
15   Nov 1996    550.00    3.38 %
16   Dec 1996    561.00    2.00 %
17   Jan 1997    567.00    1.07 %
18   Feb 1997    580.00    2.29 %
19   Mar 1997    559.00   -3.62 %
20   Apr 1997    562.00    0.54 %
21   May 1997    553.00   -1.60 %
22   Jun 1997    533.00   -3.62 %
23   Jul 1997    498.00   -6.57 %
24   Aug 1997    504.00    1.20 %
25   Sep 1997    525.00    4.17 %
26   Oct 1997    547.00    4.19 %
27   Nov 1997    556.00    1.65 %
28   Dec 1997    566.00    1.80 %
29   Jan 1998    621.00    9.72 %
30   Feb 1998    659.00    6.12 %
31   Mar 1998    671.00    1.82 %
32   Apr 1998    688.00    2.53 %
33   May 1998    705.00    2.47 %
34   Jun 1998    633.00  -10.21 %
35   Jul 1998    661.00    4.42 %
36   Aug 1998    674.00    1.97 %
37   Sep 1998    703.00    4.30 %
38   Oct 1998    694.00   -1.28 %
39   Nov 1998    681.00   -1.87 %
40   Dec 1998    663.00   -2.64 %
41   Jan 1999    632.00   -4.68 %
42   Feb 1999    561.00  -11.23 %
43   Mar 1999    497.00  -11.41 %
44   Apr 1999    509.00    2.41 %
45   May 1999    475.00   -6.68 %
46   Jun 1999    392.00  -17.47 %
47   Jul 1999    319.00  -18.62 %
48   Aug 1999    354.00   10.97 %
49   Sep 1999    388.00    9.60 %
50   Oct 1999    381.00   -1.80 %
福斯法特

           month   price    change
0    Aug 1995   35.00         -
1    Sep 1995   35.00    0.00 %
2    Oct 1995   35.00    0.00 %
3    Nov 1995   35.00    0.00 %
4    Dec 1995   35.00    0.00 %
5    Jan 1996   39.00   11.43 %
6    Feb 1996   39.00    0.00 %
7    Mar 1996   39.00    0.00 %
8    Apr 1996   39.00    0.00 %
9    May 1996   39.00    0.00 %
10   Jun 1996   39.00    0.00 %
11   Jul 1996   39.00    0.00 %
12   Aug 1996   39.00    0.00 %
13   Sep 1996   39.00    0.00 %
14   Oct 1996   39.00    0.00 %
15   Nov 1996   39.00    0.00 %
16   Dec 1996   39.00    0.00 %
17   Jan 1997   41.00    5.13 %
18   Feb 1997   41.00    0.00 %
19   Mar 1997   41.00    0.00 %
20   Apr 1997   41.00    0.00 %
21   May 1997   41.00    0.00 %
22   Jun 1997   41.00    0.00 %
23   Jul 1997   41.00    0.00 %
24   Aug 1997   41.00    0.00 %
25   Sep 1997   41.00    0.00 %
26   Oct 1997   41.00    0.00 %
27   Nov 1997   41.00    0.00 %
28   Dec 1997   41.00    0.00 %
29   Jan 1998   43.00    4.88 %
30   Feb 1998   43.00    0.00 %
31   Mar 1998   43.00    0.00 %
32   Apr 1998   43.00    0.00 %
33   May 1998   43.00    0.00 %
34   Jun 1998   43.00    0.00 %
35   Jul 1998   43.00    0.00 %
36   Aug 1998   43.00    0.00 %
37   Sep 1998   43.00    0.00 %
38   Oct 1998   43.00    0.00 %
39   Nov 1998   43.00    0.00 %
40   Dec 1998   43.00    0.00 %
41   Jan 1999   44.00    2.33 %
42   Feb 1999   44.00    0.00 %
43   Mar 1999   44.00    0.00 %
44   Apr 1999   44.00    0.00 %
45   May 1999   44.00    0.00 %
46   Jun 1999   44.00    0.00 %
47   Jul 1999   44.00    0.00 %
48   Aug 1999   44.00    0.00 %
49   Sep 1999   44.00    0.00 %
50   Oct 1999   44.00    0.00 %
美元

黄金


熊猫图书馆是这方面的完美之选。您可以使用
pd.read\u csv
导入.csv表,并将索引设置为日期列。这将为您提供一组数据帧,并将日期作为索引

然后可以使用
pd.concat
函数组合这些单独的数据帧。设置排序标志后,它将纠正任何无序索引,如下所示:

>>> dfa = pd.DataFrame([['a',1],['b',2]], index=["thing1", "thing2"], columns=['Value1', 'Value2'])
>>> dfa
       Value1  Value2
thing1      a       1
thing2      b       2

>>> dfb = pd.DataFrame([['g'],['h']], index=["thing2", "thing1"], columns=['Value3'])
>>> dfb
       Value3
thing2      g
thing1      h

>>> pd.concat([dfa,dfb], axis=1, sort=True)
       Value1  Value2 Value3
thing1      a       1      h
thing2      b       2      g

如前所述:熊猫图书馆可以轻松完成这项工作

从导入开始:

import pandas as pd
然后加载你的文件

gold_price = pd.read_csv("your/path/to/gold.csv")
oil_price = pd.read_csv("your/path/to/oil.csv")
然后,组合您的桌子:

merged_data = pd.concat([gold_price, oil_price], axes=1)
在此基础上,您可以创建具有组合信息的新列:

merged_data["gold-oil"] = merged_data["gold-change"] - merged_data["oil-change"]
唯一需要注意的是第一个索引行。我认为不允许将它们命名为相同的名称。在这里,您需要重命名它们,但它应该可以正常工作


有关更多信息,您还可以查看文档

您希望获得哪种相关性?只是比较?百分比?百分比差异?百分比差异
merged_data = pd.concat([gold_price, oil_price], axes=1)
merged_data["gold-oil"] = merged_data["gold-change"] - merged_data["oil-change"]