Python _元数据从数据帧到系列的传播
我希望能够为数据帧的每一列存储“单位”信息,并具有以下代码(uisng pandas v 0.14.1): 显然,元数据没有正确传播。 这是故意的还是错误? 如果有意的话,可以做些什么来实现这一点?Python _元数据从数据帧到系列的传播,python,pandas,metadata,dataframe,propagation,Python,Pandas,Metadata,Dataframe,Propagation,我希望能够为数据帧的每一列存储“单位”信息,并具有以下代码(uisng pandas v 0.14.1): 显然,元数据没有正确传播。 这是故意的还是错误? 如果有意的话,可以做些什么来实现这一点?copy.copy(…)目前可以在pandas对象上工作,但该机制不会保留元数据 下面是实现这一点的方法 一个简单的解决方法是使用s.copy(),这将保留元数据 下面是一个更完整的文档,说明如何执行此操作。使用s.copy()将允许执行此操作。二工作;这可能是一个错误,_u; copy__;没有传播
copy.copy(…)
目前可以在pandas对象上工作,但该机制不会保留元数据
下面是实现这一点的方法
一个简单的解决方法是使用s.copy()
,这将保留元数据
下面是一个更完整的文档,说明如何执行此操作。使用s.copy()将允许执行此操作。二工作;这可能是一个错误,_u; copy__;没有传播(这就是copy.copy调用的)
import pandas as pd
import numpy as np
import copy
# Monkey path Series:
pd.Series._metadata.append('units')
# Test it
df = pd.DataFrame(data=np.random.randn(5,2), columns=['A', 'B'])
df['A'].units = 's'
df['B'].units = 'm'
s = df['A']
print s.units # produces 's' as expected / desired
s = copy.copy(df['A'])
print s.units # crash, attribute does not exists
print s._metadata # produces ['name', 'units'] as expected