crosstab交叉表_python使用pandas的交叉表crosstab出现问题

在使用pandas的crosstab函数进行数据分析时遇到错误。尝试从数据库获取数据并转化为DataFrame,然后创建交叉表,但执行city_education = pd.crosstab(frame[10], frame[8], margins=True).sort_values(by='All', ascending=False)[:11]时出现'IndexError: Too many levels: Index has only 1 level, not 11'。问题可能源于DataFrame的列选择或crosstab参数设置。" 85270363,8043507,优化MFCC提升非个性化情绪识别效果,"['语音处理', '情感识别', '信号处理', '机器学习', 'matlab编程']
摘要由CSDN通过智能技术生成

对数据分析时使用到pandas,下面的代码是从数据库中获取数据再转换成DataFrame结构sql = 'select * from content;'

cur.execute(sql)

rows = cur.fetchall()

datas = []

for data in rows:

datas.append(data)

frame = DataFrame(datas)

数据库的表结构如下:

下面就是数据操作的代码:def get_education():

print(frame)

print(frame[10])

print(frame[8])

print(type(frame[10]))

city_education = pd.crosstab(frame[10], frame[8], margins=True).sort_values(by='All', ascending=False)[:11]

print(city_education)

然后就一直出现错误:

Traceback (most recent call last):

File "D:/python爬虫/python爬虫/爬取拉钩.py", line 301, in

get_education()

File "D:/python爬虫/python爬虫/爬取拉钩.py", line 249, in get_education

city_education = pd.crosstab(frame[10], frame[8], margins=True).sort_values(by='All', ascending=False)[:11]

File "F:\Python35\lib\site-packages\pandas\tools\pivot.py", line 462, in crosstab

aggfunc=len, margins=margins, dropna=dropna)

File "F:\Python35\lib\site-packages\pandas\tools\pivot.py", line 158, in pivot_table

margins_name=margins_name)

File "F:\Python35\lib\site-packages\pandas\tools\pivot.py", line 180, in _add_margins

if margins_name in table.index.get_level_values(level):

File "F:\Python35\lib\site-packages\pandas\indexes\base.py", line 2025, in get_level_values

self._validate_index_level(level)

File "F:\Python35\lib\site-packages\pandas\indexes\base.py", line 1163, in _validate_index_level

(level + 1))

IndexError: Too many levels: Index has only 1 level, not 11

求解答,刚接触pandas,但也参考过别人的,他也是这样写的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值