Данные в вашем файле Excel содержат информацию заголовка в первой строке, поэтому установка header=None
является причиной того, что в ваших данных есть строковые значения вместо того, чтобы указывать их как имена столбцов.
Если вы удаляете заголовок kwarg
xlsxfile = pd.ExcelFile("C:\\Users\\AchourAh\\Desktop\\PL14_IPC_03_09_2018_SP_Level.xlsx")
data = xlsxfile.parse('Sheet1', index_col = None)
все должно работать, и вы должны получить кадр данных, подобный следующему:
data
0 PP SP000045856 COP COR SP000045856 PAUS
0 1 201723 0 2000
1 2 201724 12560 40060
2 3 201725 -17760 15040
3 4 201726 -5840 16960
4 5 201727 10600 4480
5 6 201728 0 14700
6 7 201729 4760 46820
Однако вы можете сделать то же самое, даже немного короче, напрямую используя read_excel
-функция панд:
data = pd.read_excel('C:\\Users\\AchourAh\\Desktop\\PL14_IPC_03_09_2018_SP_Level.xlsx', 'Sheet1')
Ваш точечный график может быть выполнен, например, как
data.plot('SP000045856 COP COR', 'SP000045856 PAUS', 'scatter')
или, возможно, лучше читаемым, но идентичным:
data.plot.scatter('SP000045856 COP COR', 'SP000045856 PAUS')
Илинейная регрессия может быть сделана как
slope, intercept, r_value, p_value, std_err = stats.linregress(data['SP000045856 COP COR'], data['SP000045856 PAUS'])