所以我有一个数据帧,看起来像:
a = pd.DataFrame({'A':[1,2,3],'B':[4,5,6]})
我可以转置它,并轻松地添加一个新的列值:
^{pr2}$但是,如果我将日期索引添加到原始数据帧,然后将其转置,则无法向转置添加任何新列。在
a.index = pd.date_range('20130101',periods=3)
aT = a.T
aT['C']=1
ValueError Traceback (most recent call last)
<ipython-input-11-703e95b478c3> in <module>()
----> 1 aT['C']=1
/Users/maxsong/anaconda/lib/python2.7/site-packages/pandas/core/frame.pyc in __setitem__(self, key, value)
2117 else:
2118 # set column
-> 2119 self._set_item(key, value)
2120
2121 def _setitem_slice(self, key, value):
/Users/maxsong/anaconda/lib/python2.7/site-packages/pandas/core/frame.pyc in _set_item(self, key, value)
2164 """
2165 value = self._sanitize_column(key, value)
-> 2166 NDFrame._set_item(self, key, value)
2167
2168 def insert(self, loc, column, value, allow_duplicates=False):
/Users/maxsong/anaconda/lib/python2.7/site-packages/pandas/core/generic.pyc in _set_item(self, key, value)
677
678 def _set_item(self, key, value):
--> 679 self._data.set(key, value)
680 self._clear_item_cache()
681
/Users/maxsong/anaconda/lib/python2.7/site-packages/pandas/core/internals.pyc in set(self, item, value)
1779 except KeyError:
1780 # insert at end
-> 1781 self.insert(len(self.items), item, value)
1782
1783 self._known_consolidated = False
/Users/maxsong/anaconda/lib/python2.7/site-packages/pandas/core/internals.pyc in insert(self, loc, item, value, allow_duplicates)
1799 # so our insertion operation failed, so back out of the new items
1800 # GH 3010
-> 1801 new_items = self.items.delete(loc)
1802 self.set_items_norename(new_items)
1803
/Users/maxsong/anaconda/lib/python2.7/site-packages/pandas/tseries/index.pyc in delete(self, loc)
1478 new_index : DatetimeIndex
1479 """
-> 1480 arr = np.delete(self.values, loc)
1481 return DatetimeIndex(arr, tz=self.tz)
1482
/Users/maxsong/anaconda/lib/python2.7/site-packages/numpy/lib/function_base.pyc in delete(arr, obj, axis)
3454 if (obj < 0 or obj >=N):
3455 raise ValueError(
-> 3456 "invalid entry")
3457 newshape[axis]-=1;
3458 new = empty(newshape, arr.dtype, arr.flags.fnc)
ValueError: invalid entry
这对我在pandas上有效
0.14.0
,你应该至少升级到0.13
。在相关问题 更多 >
编程相关推荐