我有一个包含df
列的DataFrame 'a'
。如何创建具有'b'
的新列dtype=object
?
我知道这可能被认为是糟糕的形式,但目前我有一个数据框df
,其中列'a'
包含数组(每个元素都是np.array
)。我想创建一个新列'b'
,其中每个元素都是一个新的np.array
,其中包含'a'
中相应元素的日志。
目前我尝试了这两种方法,但都没有奏效:
for i in df.index:
df.set_value(i,'b', log10(df.loc[i,'a']))
和
for i in df.index:
df.loc[i,'b'] = log10(df.loc[i,'a']))
两者都给我ValueError: Must have equal len keys and value when setting with an iterable
。
我假设错误发生是因为新列的dtype默认为float
,尽管我可能错了。