Python /:';str';和';str';PandasDataframe中的操作出错

Python /:';str';和';str';PandasDataframe中的操作出错,python,pandas,dataframe,Python,Pandas,Dataframe,我希望运行此小代码,但它显示: 'unsupported operand type(s) for /: 'str' and 'str'' 我怎样才能解决这个问题 以下是数据帧的图片: import pandas as pd btc = pd.read_csv('btc.csv',index_col='Date',parse_dates=True) btc = btc['Price'] spy = pd.read_csv('spy.csv',index_col='Date',parse_dat

我希望运行此小代码,但它显示:

 'unsupported operand type(s) for /: 'str' and 'str''
我怎样才能解决这个问题

以下是数据帧的图片:

import pandas as pd
btc = pd.read_csv('btc.csv',index_col='Date',parse_dates=True)
btc = btc['Price']
spy = pd.read_csv('spy.csv',index_col='Date',parse_dates=True)
spy = spy['Price']
stocks = pd.concat([btc,spy],axis=1).dropna()
stocks.columns = ['btc','spy']
stocks.pct_change(1).corr()


也许您的计算机已设置为以“,”作为十进制分隔符而不是“.”来读取数字。尝试:

import pandas as pd
btc = pd.read_csv('btc.csv',index_col='Date',parse_dates=True, decimal='.', thousands=',')
btc = btc['Price']
spy = pd.read_csv('spy.csv',index_col='Date',parse_dates=True, decimal='.', thousands=',')
spy = spy['Price']
stocks = pd.concat([btc,spy],axis=1).dropna()
stocks.columns = ['btc','spy']
stocks.pct_change(1).corr()

您的列
spy
具有
对象
数据类型,因为它包含(不允许)数千个分隔符

stocks.head()
这样做:

stocks["spy"] = stocks.spy.str.replace(",", "").astype(float)

就在您最后一个命令之前
stocks.pct_change(1).corr()

谢谢您的帮助。但是代码仍然无法运行。您能否显示整个错误消息以及'stocks'df中列的数据类型?
stocks.dtypes
btc    float64
spy     object
dtype: object
stocks["spy"] = stocks.spy.str.replace(",", "").astype(float)