找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 2887|回复: 2

[求助] pandas出现TypeError: string indices must be integers错误

8

主题

22

帖子

22

积分

贫民

积分
22
欢乐的舒畅 发表于 2021-2-16 14:25:10 | 显示全部楼层 |阅读模式
我在使用python分析股票数据,分析单只股票的时候代码没有问题,可是在封装函数以后出现了问题。根据问题进行百度,也没有找到合适的答案,求助。代码如下:
  1. import pandas as pd
  2. import numpy as np
  3. import akshare as ak
  4. import tushare as ts
  5. data=ts.get_k_data('sh600584','2021-01-01','2021-02-07')
  6. l1=data['date'].tolist()

  7. def get_data():
  8.       l2=[]
  9.      for i in l1:
  10.            j =i.replace("-","")#将日期'2021-02-07'转换成'20210207'形式
  11.           data1= ak.stock_zh_a_tick_163(code="sh600584", trade_date=j)
  12.           data1.index=pd.to_datetime(data1['成交时间'])
  13.     return data1

  14. get_data()
复制代码
报错为:
  1. ---------------------------------------------------------------------------
  2. TypeError                                 Traceback (most recent call last)
  3. <ipython-input-3-c1be559af0b6> in <module>
  4. ----> 1 get_data()

  5. <ipython-input-2-9efd7eeabd6a> in get_data()
  6.       4         j =i.replace("-","")#将日期'2021-02-07'转换成'20210207'形式
  7.       5         data1= ak.stock_zh_a_tick_163(code="sh600584", trade_date=j)
  8. ----> 6         data1.index=pd.to_datetime(data1['成交时间'])
  9.       7 #         data1=data.resample('1min')['成交价'].ohlc()
  10.       8 #         data1=data.resample('1min')['成交价'].ohlc()

  11. TypeError: string indices must be integers
复制代码
按照问题的字面意思是不应该是字符串而应该是数字,但是我的代码在单独运行的时候已经验证过了,完全没有问题,在这里一直出现问题,求助。
回复

使用道具 举报

0

主题

956

帖子

956

积分

圣骑士

积分
956
sheeboard 发表于 2021-2-18 17:30:55 | 显示全部楼层
用时间索引,不要用string,转的时候用to_datatime,输出显示格式自己定义一下。
回复 支持 反对

使用道具 举报

8

主题

22

帖子

22

积分

贫民

积分
22
欢乐的舒畅  楼主| 发表于 2021-3-7 21:05:36 | 显示全部楼层
sheeboard 发表于 2021-2-18 17:30
用时间索引,不要用string,转的时候用to_datatime,输出显示格式自己定义一下。 ...

我研究出来原因了,是akshare库的问题,谢谢了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表