【python】关于Pandas DataFrame 的一些奇怪的问题

具体代码如下:

def reshape_data(time_today, data_today):
    #构建时间序列数组
    len_data = len(data_today)
    time_try = [parse(time_today)]*len_data
    #插入时间轴并定为最外轴
    data_today.insert(0, 'time', time_try)
    data_today.set_index(['time',data_today.index], inplace = True)
    return data_today

输入为一个字符串time_today和一个DataFrame data_today
然后在实际运行中提示出错,详细错误代码如下:

NotImplementedError    Traceback (most recent call last)
<ipython-input-14-d4c768794e17> in <module>
1 if __name__ == '__main__':
----> 2     main()
      3     rootdir

<ipython-input-8-0c303725fb93> in main()
     15     test_b = caculate_rate(a)
     16     print(test_b)
---> 17     test_b = reshape_data(time_a, test_b)
     18     save_csv(test_b, file_name_test, False)
     19     b = save_csv(test_a, file_name_test, True)

<ipython-input-13-1381f1d66cba> in reshape_data(time_today, data_today)
      9     data_today.index.names = ['name']
     10     data_today = data_today.reset_index()
---> 11     data_today.set_index(['time','name'], inplace = True)
     12 
     13     return data_today

G:\anaconda\lib\site-packages\pandas\core\frame.py in set_index(self, keys, drop, append, inplace, verify_integrity)
   3913             arrays.append(level)
   3914 
-> 3915         index = _ensure_index_from_sequences(arrays, names)
   3916 
   3917         if verify_integrity and not index.is_unique:

G:\anaconda\lib\site-packages\pandas\core\indexes\base.py in _ensure_index_from_sequences(sequences, names)
   4909         return Index(sequences[0], name=names)
   4910     else:
-> 4911         return MultiIndex.from_arrays(sequences, names=names)
   4912 
   4913 

G:\anaconda\lib\site-packages\pandas\core\indexes\multi.py in from_arrays(cls, arrays, sortorder, names)
   1272         from pandas.core.arrays.categorical import _factorize_from_iterables
   1273 
-> 1274         labels, levels = _factorize_from_iterables(arrays)
   1275         if names is None:
   1276             names = [getattr(arr, "name", None) for arr in arrays]

G:\anaconda\lib\site-packages\pandas\core\arrays\categorical.py in _factorize_from_iterables(iterables)
   2541         # For consistency, it should return a list of 2 lists.
   2542         return [[], []]
-> 2543     return map(list, lzip(*[_factorize_from_iterable(it) for it in iterables]))

G:\anaconda\lib\site-packages\pandas\core\arrays\categorical.py in <listcomp>(.0)
   2541         # For consistency, it should return a list of 2 lists.
   2542         return [[], []]
-> 2543     return map(list, lzip(*[_factorize_from_iterable(it) for it in iterables]))

G:\anaconda\lib\site-packages\pandas\core\arrays\categorical.py in _factorize_from_iterable(values)
   2513         codes = values.codes
   2514     else:
-> 2515         cat = Categorical(values, ordered=True)
   2516         categories = cat.categories
   2517         codes = cat.codes

G:\anaconda\lib\site-packages\pandas\core\arrays\categorical.py in __init__(self, values, categories, ordered, dtype, fastpath)
    355 
    356                 # FIXME
--> 357                 raise NotImplementedError("> 1 ndim Categorical are not "
    358                                           "supported at this time")
    359 

NotImplementedError: > 1 ndim Categorical are not supported at this time

这是什么神奇的事情啊?其他地方都没事,只有这里调用的时候出错,连语法都是一样的。

1个回答

不知道你的那个parse()函数是干啥的,去掉parse(),以下是没问题的

>>>
>>> time_today = '2019-01-24'
>>> data_today = pd.DataFrame({'key':['a','b','c'],'data1':[1,2,3],'data2':[4,5,6]})
>>> #构建时间序列数组
... len_data = len(data_today)
>>> time_try = [time_today]*len_data
>>> time_try
['2019-01-24', '2019-01-24', '2019-01-24']
>>> #time_try = [parse(time_today)]*len_data
... #插入时间轴并定为最外轴
... data_today.insert(0, 'time', time_try)
>>> data_today
         time key  data1  data2
0  2019-01-24   a      1      4
1  2019-01-24   b      2      5
2  2019-01-24   c      3      6
>>> data_today.set_index(['time',data_today.index], inplace = True)
>>> data_today
             key  data1  data2
time
2019-01-24 0   a      1      4
           1   b      2      5
           2   c      3      6
>>>

qq_30089875
qq_30089875 回复: a = ['s']*51 s = DataFrame(np.zeros(51*51).reshape((51,51)), index = a) time_try = [parse('20190124')]*len(a) s.insert(0, 'time', time_try) s.index.names = ['name'] s = s.reset_index() s.set_index(['time','name'],inplace = True)
10 个月之前 回复
qq_30089875
qq_30089875 这就是奇怪的地方了,我这样写就没问题:
10 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
python pandas DataFrame 按照行的值域来分组
-
python pandas dataframe 中数组的拆分
-
如何用Python的pandas实现DataFrame列的字符串截取
-
pandas dataframe数据结构,想检查索引列中的数据是否唯一怎么检查
-
如何用Python的pandas实现DataFrame行的拆分,或者其他方法也可以。
-
pandas中Dataframe中的操作问题
-
python如何对dataframe中行去重?
-
python groupby问题,如何取出现过最多的人名和所有人的平均成绩
-
Pandas的DataFrame的过滤查询
-
python pandas apply 原理求解,如何在dataframe 中将同一行的某个数值塞进df结构的一列?
-
Python中pandas读取数据库engine=create_engine()可以多人使用一个连接吗?
-
python中 dataframe使用permutation和take对 列 进行随机排序失败
-
安装了pandas,为什么会出现ImportError: cannot import name 'DataFrame' from 'pandas' ?
-
python pandas的使用问题
-
python: 如何将dataframe一列中的字典拆分成多列?
-
python的pandas的read_sql如何读取dbf格式,参数如何填?
-
python dataframe 用第一列数据修改index
-
关于python输出内容到用户界面的疑惑
-
python pandas用函数算距离时报错
-
程序员实用工具网站
目录 1、搜索引擎 2、PPT 3、图片操作 4、文件共享 5、应届生招聘 6、程序员面试题库 7、办公、开发软件 8、高清图片、视频素材网站 9、项目开源 10、在线工具宝典大全 程序员开发需要具备良好的信息检索能力,为了备忘(收藏夹真是满了),将开发过程中常用的网站进行整理。 1、搜索引擎 1.1、秘迹搜索 一款无敌有良心、无敌安全的搜索引擎,不会收集私人信息,保...
史上最详细的IDEA优雅整合Maven+SSM框架(详细思路+附带源码)
网上很多整合SSM博客文章并不能让初探ssm的同学思路完全的清晰,可以试着关掉整合教程,摇两下头骨,哈一大口气,就在万事具备的时候,开整,这个时候你可能思路全无 ~中招了咩~ ,还有一些同学依旧在使用eclipse或者Myeclipse开发,我想对这些朋友说IDEA 的编译速度很快,人生苦短,来不及解释了,直接上手idea吧。这篇文章每一步搭建过程都测试过了,应该不会有什么差错。本文章还有个比较优秀的特点,就是idea的使用,基本上关于idea的操作都算是比较详细的,所以不用太担心不会撸idea!最后,本文
从入门到精通,Java学习路线导航
引言 最近也有很多人来向我"请教",他们大都是一些刚入门的新手,还不了解这个行业,也不知道从何学起,开始的时候非常迷茫,实在是每天回复很多人也很麻烦,所以在这里统一作个回复吧。 Java学习路线 当然,这里我只是说Java学习路线,因为自己就是学Java的,对Java理当很熟悉,对于其它方面,我也不是很了解。 基础阶段 首先是基础阶段,在基础阶段,我们必须掌握Java基础,Mysql数据库,Ora...
鸿蒙 OS 的到来,能为我们改变什么?
作者 | 屠敏 出品 | CSDN(ID:CSDNnews) 「鸿蒙初辟原无姓,打破顽空需悟空」,在国产自研操作系统短缺的窘境之下,天惊一声雷,「鸿蒙」踏风来。 回首上个月的技术圈,最值得业界浮称流说的无疑是 8 月 9 日华为开发者大会 2019(简称 HDC 2019)上公开的「鸿蒙 OS」。作为一款基于微内核的全场景分布式 OS,「鸿蒙 OS」肩负打破传统 IoT 操作系统的责任,同时也成...
100 个网络基础知识普及,看完成半个网络高手
1)什么是链接? 链接是指两个设备之间的连接。它包括用于一个设备能够与另一个设备通信的电缆类型和协议。 2)OSI 参考模型的层次是什么? 有 7 个 OSI 层:物理层,数据链路层,网络层,传输层,会话层,表示层和应用层。 3)什么是骨干网? 骨干网络是集中的基础设施,旨在将不同的路由和数据分发到各种网络。它还处理带宽管理和各种通道。 4)什么是 LAN? LAN 是局域网的缩...
C语言实现推箱子游戏
很早就想过做点小游戏了,但是一直没有机会动手。今天闲来无事,动起手来。过程还是蛮顺利的,代码也不是非常难。今天给大家分享一下~ 一、介绍 开发语言:C语言 开发工具:Dev-C++ 5.11 日期:2019年9月28日 作者:ZackSock 也不说太多多余的话了,先看一下效果图: 游戏中的人物、箱子、墙壁、球都是字符构成的。通过wasd键移动,规则的话就是推箱子的规则,也就不多说了。 二、代...
面试官,不要再问我三次握手和四次挥手
三次握手和四次挥手是各个公司常见的考点,也具有一定的水平区分度,也被一些面试官作为热身题。很多小伙伴说这个问题刚开始回答的挺好,但是后面越回答越冒冷汗,最后就歇菜了。 见过比较典型的面试场景是这样的: 面试官:请介绍下三次握手 求职者:第一次握手就是客户端给服务器端发送一个报文,第二次就是服务器收到报文之后,会应答一个报文给客户端,第三次握手就是客户端收到报文后再给服务器发送一个报文,三次握手就...
德国 IT 薪酬大揭秘!
作者 |德国IT那些事责编 | 伍杏玲“所有脱离工龄、级别、职位、经验、城市以及裙带关系来谈论工资,都是耍流氓!”——佛洛依德一般来说IT行业公司,资历是按等级划分的...
500行代码,教你用python写个微信飞机大战
这几天在重温微信小游戏的飞机大战,玩着玩着就在思考人生了,这飞机大战怎么就可以做的那么好,操作简单,简单上手。 帮助蹲厕族、YP族、饭圈女孩在无聊之余可以有一样东西让他们振作起来!让他们的左手 / 右手有节奏有韵律的朝着同一个方向来回移动起来! 这是史诗级的发明,是浓墨重彩的一笔,是…… 在一阵抽搐后,我结束了游戏,瞬时觉得一切都索然无味,正在我进入贤者模式时,突然想到,如果我可以让更多人已不同的方式体会到这种美轮美奂的感觉岂不美哉? 所以我打开电脑,创建了一个 `plan_game.py`……
别在学习框架了,那些让你起飞的计算机基础知识。
我之前里的文章,写的大部分都是与计算机基础知识相关的,这些基础知识,就像我们的内功,如果在未来想要走的更远,这些内功是必须要修炼的。框架千变万化,而这些通用的底层知识,却是几乎不变的,了解了这些知识,可以帮助我们更快着学习一门知识,更加懂得计算机的运行机制。当然,在面试中也经常会被问到,特别是对于应届生,对于春秋招,也可以看看我前阵子写过的文章历经两个月,我的秋招之路结束了!。也有读者经常问的计算...
不就是SELECT COUNT语句吗,竟然能被面试官虐的体无完肤
数据库查询相信很多人都不陌生,所有经常有人调侃程序员就是CRUD专员,这所谓的CRUD指的就是数据库的增删改查。 在数据库的增删改查操作中,使用最频繁的就是查询操作。而在所有查询操作中,统计数量操作更是经常被用到。 关于数据库中行数统计,无论是MySQL还是Oracle,都有一个函数可以使用,那就是COUNT。 但是,就是这个常用的COUNT函数,却暗藏着很多玄机,尤其是在面试的时候,一不小心就会...
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
如何优化MySQL千万级大表,我写了6000字的解读
这是学习笔记的第2138篇文章 千万级大表如何优化,这是一个很有技术含量的问题,通常我们的直觉思维都会跳转到拆分或者数据分区,在此我想做一些补充和梳理,想和大家做一些这方面的经验总结,也欢迎大家提出建议。 从一开始脑海里开始也是火光四现,到不断的自我批评,后来也参考了一些团队的经验,我整理了下面的大纲内容。 既然要吃透这个问题,我们势必要回到本源,我把这个...
面试最后一问:你有什么问题想问我吗?
尽管,我们之前分享了这么多关于面试的主题: 高薪必备的一些Spring Boot高级面试题 面试必问:设计模式遵循的面向对象设计原则! 面试必问:怎么保证缓存与数据库的双写一致性? 27道高频Spring面试题,你能答对几个? 唠唠面试常问的:面向对象六大原则 一文高效图解二叉树面试题 Java面试中最高频的那20%知识点是什么? 百度面试题:求数组最大值 ... 然而,最后这个90%可见...
python 程序员进阶之路:从新手到高手的100个模块
在知乎和CSDN的圈子里,经常看到、听到一些 python 初学者说,学完基础语法后,不知道该学什么,学了也不知道怎么用,一脸的茫然。近日,CSDN的公众号推送了一篇博客,题目叫做《迷思:Python 学到什么程度可以面试工作?》,真实反映了 python 程序员在成长过程中的一些困惑。
Python——画一棵漂亮的樱花树(不同种樱花+玫瑰+圣诞树喔)
最近翻到一篇知乎,上面有不少用Python(大多是turtle库)绘制的树图,感觉很漂亮,我整理了一下,挑了一些我觉得不错的代码分享给大家(这些我都测试过,确实可以生成) one 樱花树 动态生成樱花 效果图(这个是动态的): 实现代码 import turtle as T import random import time # 画樱花的躯干(60,t) def Tree(branch, ...
程序员成长的四个简单技巧,你 get 了吗?
最近拜读了“阿里工程师的自我修养”手册,12 位技术专家分享生涯感悟来帮助我们这些菜鸡更好的成长,度过中年危机,我收获颇多,其中有不少的方法技巧和我正在使用的,这让我觉得我做的这些事情是对的,我走在了一条正确的道路上。我们程序员这个行业不像医生、律师等其他行业,那些行业可谓是越老越吃香,但是我们不一样,我们不能享受越老越吃香的待遇,因为互联网发展太快,技术不断的更新,就我工作的这短短几年时间就有不...
Java 8:一文掌握 Lambda 表达式
本文将介绍 Java 8 新增的 Lambda 表达式,包括 Lambda 表达式的常见用法以及方法引用的用法,并对 Lambda 表达式的原理进行分析,最后对 Lambda 表达式的优缺点进行一个总结。
Python中几个非常有趣的模块
最近学习Python,发现了许多有趣的模块。感觉开启了新世界的大门,因为我也不是对所有模块都熟悉,所以今天不是讲代码。 1、ItChat 这是一个微信自动回复的模块,因为我微信一直无法登陆,所以也没有测试这个模块的功能。这里只是简单介绍一下。 使用流程大致就是: 登陆微信 注册监听 响应监听 结束 而我就卡在了登陆微信上面,注册监听的话代码也是非常简单的。它可以监听多种数据,文字、图片、视频等...
2020年秋招后端面经
主要包含华为,网易互娱,广联达,科大讯飞,浦发,中兴,上海农商行这些已经拿offer的,还有京东(不小心把二面时间换了一下,等通知等三个月了),虾皮(一面挂),顺丰(sp专场一面之后没消息,秋招第一个面试),携程的一些面经 文章目录1.自我介绍2.项目介绍3.接口和抽象类的区别相同点:不同点:4.多态5.重载和覆盖6.spring1.动态代理基于接口基于继承2.AOP2.1AOP3.IOC5.SS...
MySQL常用命令/用户管理/数据库备份与恢复
MySQL密码设置与更改: 设置root用户密码: [root@linux ~]# mysqladmin -uroot password "123456" 更改root用户密码: [root@linux ~]# mysqladmin -uroot -p'123456' password '654321' 登录数据库更改密码: MariaDB [(none)]&gt; use mysql; Ma...
相关热词 c# mysql插入 c# sha256 加密 c#窗体上的叉添加事件 c#打印图片文件 c#後台調前台js c#控制台美化 c# 标记 浮点型 c#获取当前的农历日期 c# 构造函数重载 c# 页面功能注释