Python - can't make corr work

I am trying to get a simple correlation. I tried everything that was suggested on similar issues.

Here are the relevant parts of the code, the various attempts I made, and their results.

import numpy as np import pandas as pd try01 = data[['ESA Index_close_px', 'CCMP Index_close_px' ]].corr(method='pearson') print (try01) 

Of:

 Empty DataFrame Columns: [] Index: [] 

 try04 = data['ESA Index_close_px'][5:50].corr(data['CCMP Index_close_px'][5:50]) print (try04) 

Of:

 **AttributeError: 'float' object has no attribute 'sqrt'** 

using numpy

 try05 = np.corrcoef(data['ESA Index_close_px'],data['CCMP Index_close_px']) print (try05) 

Of:

 AttributeError: 'float' object has no attribute 'sqrt' 

convert columns to lists

 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) 

Of:

 ****TypeError: cannot perform reduce with flexible type**** 

Also tried .astype, but it didn't make any difference.

 data['ESA Index_close_px'].astype(float) data['CCMP Index_close_px'].astype(float) 

Using Python 3.5, pandas 0.18.1 and numpy 1.11.1

Any suggestion would be truly appreciated.

** edit1: * Data comes from the Excel table data = pd.read_excel('C:\\Users\\Ako\\Desktop\\ako_files\\for_corr_β€Œβ€‹tool.xlsx') there are only column renames and

 data = data.drop(data.index[0]) 

to get rid of the string

regarding types:

 print (type (data['ESA Index_close_px'])) print (type (data['ESA Index_close_px'][1])) 

Of:

** edit2 * data parts:

 print (data['ESA Index_close_px'][1:10]) print (data['CCMP Index_close_px'][1:10]) 

Of:

 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 
+6
source share
2 answers

Well, today I faced the same problem. try using .astype('float64') to make the correct type.
data['ESA Index_close_px'][5:50].astype('float64').corr(data['CCMP Index_close_px'][5:50].astype('float64'))

This works well for me. Hope this helps you too.

+10
source

You can try the following:

 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')) 

It worked for me.

0
source

Source: https://habr.com/ru/post/1012083/


All Articles