我有一个多索引数据框,其中最内层索引可以是不等长度,我希望能够添加具有重复值的另一列,但由于行计数不相等,我无法这样做:
df['marker'] = np.repeat([0,1,2], len(df), axis = 0)
ValueError: Length of values does not match length of index
这是我的数据框示例:
close
date ticker expiry_dt
2016-07-27 BHEL 2016-07-28 147
2016-08-25 147
2016-09-29 150
2016-07-28 BHEL 2016-07-28 149
2016-08-25 147
2016-09-29 149
2016-07-29 BHEL 2016-08-25 149
2016-09-29 149
如您所见,最里面的索引('expirty_dt')长度不等。我想要的输出是:
我可以通过一个循环实现这一点,但是我有一个大型数据库,并且循环在每天这样做效率很低。提前致谢
答案 0 :(得分:1)
你想要
hibernate.connection.driver_class = org.postgresql.Driver
hibernate.connection.url = yoururl
hibernate.connection.username = youruserid
hibernate.connection.password = yourpwd
hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect
答案 1 :(得分:0)
您的np.repeat
表达式生成一个整数为3*len(df)
的数组。
In [176]: np.repeat([0,1,2],3)
Out[176]: array([0, 0, 0, 1, 1, 1, 2, 2, 2])
In [177]: _.shape
Out[177]: (9,)
有一个不同的转发器
In [178]: np.tile([0,1,2],3)
Out[178]: array([0, 1, 2, 0, 1, 2, 0, 1, 2])
但仍有一个问题是总数字是否合适。