単純な相関関係を作成するのに苦労しています。私は同様の質問の下で提案されたすべてを試しました。
コードの関連部分、私が行ったさまざまな試みとその結果は次のとおりです。
_import numpy as np
import pandas as pd
try01 = data[['ESA Index_close_px', 'CCMP Index_close_px' ]].corr(method='pearson')
print (try01)
_
でる:
_Empty DataFrame
Columns: []
Index: []
_
_try04 = data['ESA Index_close_px'][5:50].corr(data['CCMP Index_close_px'][5:50])
print (try04)
_
でる:
_**AttributeError: 'float' object has no attribute 'sqrt'**
_
_try05 = np.corrcoef(data['ESA Index_close_px'],data['CCMP Index_close_px'])
print (try05)
_
でる:
_AttributeError: 'float' object has no attribute 'sqrt'
_
_ESA_Index_close_px_list = list()
start_value = 1
end_value = len (data['ESA Index_close_px']) +1
for items in data['ESA Index_close_px']:
ESA_Index_close_px_list.append(items)
start_value = start_value+1
if start_value == end_value:
break
else:
continue
CCMP_Index_close_px_list = list()
start_value = 1
end_value = len (data['CCMP Index_close_px']) +1
for items in data['CCMP Index_close_px']:
CCMP_Index_close_px_list.append(items)
start_value = start_value+1
if start_value == end_value:
break
else:
continue
try06 = np.corrcoef(['ESA_Index_close_px_list','CCMP_Index_close_px_list'])
print (try06)
_
でる:
_****TypeError: cannot perform reduce with flexible type****
_
.astypeも試しましたが、違いはありませんでした。
_data['ESA Index_close_px'].astype(float)
data['CCMP Index_close_px'].astype(float)
_
Python 3.5、pandas 0.18.1およびnumpy1.11.1を使用
どんな提案でも本当にありがたいです。
** edit1:*データは、相関の試行前にExcelスプレッドシートdata = pd.read_Excel('C:\\Users\\Ako\\Desktop\\ako_files\\for_corr_tool.xlsx')
から取得され、列の名前変更と
_data = data.drop(data.index[0])
_
線を取り除くために
タイプに関して:
_print (type (data['ESA Index_close_px']))
print (type (data['ESA Index_close_px'][1]))
_
でる:
** edit2 *データの一部:
_print (data['ESA Index_close_px'][1:10])
print (data['CCMP Index_close_px'][1:10])
_
でる:
_2 2137
3 2138
4 2132
5 2123
6 2127
7 2126.25
8 2131.5
9 2134.5
10 2159
Name: ESA Index_close_px, dtype: object
2 5241.83
3 5246.41
4 5243.84
5 5199.82
6 5214.16
7 5213.33
8 5239.02
9 5246.79
10 5328.67
Name: CCMP Index_close_px, dtype: object
_
さて、私は今日同じ問題に遭遇しました。 .astype('float64')
を使用して、型を正しくしてみてください。data['ESA Index_close_px'][5:50].astype('float64').corr(data['CCMP Index_close_px'][5:50].astype('float64'))
これは私にとってはうまくいきます。それがあなたにも役立つことを願っています。
次のように試すことができます。
Top15['Citable docs per capita']=(Top15['Citable docs per capita']*100000)
Top15['Citable docs per capita'].astype('int').corr(Top15['Energy Supply per Capita'].astype('int'))
それは私のために働いた。