调用corr()生成相关矩阵遇'Table'对象无corr属性错误求助
解决AttributeError: 'Table' object has no attribute 'corr'及相关问题
问题根源
你通过datascience.Table.read_table()读取数据得到的premier是datascience库的Table对象,而非pandas的DataFrame。corr()是pandas DataFrame专属的方法,因此直接调用会触发属性错误。你之前遇到的to_excel失效问题,同样是因为操作对象不是pandas DataFrame导致的。
解决方案
方案1:将datascience Table转换为pandas DataFrame
先把Table对象转成DataFrame,再使用pandas的方法:
from datascience import Table import pandas as pd # 读取数据得到Table对象 premier = Table.read_table("你的数据文件路径") # 转换为pandas DataFrame premier_df = premier.to_df() # 生成相关矩阵 corr_matrix = premier_df.corr() # 导出到Excel(解决之前的to_excel失效问题) premier_df.to_excel("输出文件路径.xlsx", index=False)
方案2:直接用pandas读取数据
如果后续主要用pandas做数据处理,建议跳过datascience Table,直接用pandas读取:
import pandas as pd # 直接读取为pandas DataFrame premier_df = pd.read_table("你的数据文件路径") # 生成相关矩阵 corr_matrix = premier_df.corr() # 导出到Excel premier_df.to_excel("输出文件路径.xlsx", index=False)
内容的提问来源于stack exchange,提问作者Carlos Pacheco
相关产品推荐
相关产品推荐

