Pandas DataFrame中有多个列名

时间:2016-11-17 00:36:20

标签: python-3.x pandas numpy dataframe

我目前正在将一些数据从numpy数组移动到Pandas DataFrame,以便我可以通过名称而不是索引来引用列。我遇到的问题是我想允许多个名称引用同一列。

Accel = df['Sensor4221']
例如,传感器4221是结构第5层的加速度计。我想添加一个额外的标签(例如AccLevel5),以便我可以参考该列而不必记住一个模糊的传感器编号。

因此,以下两个都将提供相同的输出。

Accel = df['AccLevel5']

2
5
8

都给出了:

    array = [1,2,3,4,5,-1,-2,-3,-4,-5];

1 个答案:

答案 0 :(得分:0)

数据帧是numpy数组的包装器。您可以指定另一个指向同一数组的数据框来完成目标。

data = np.array([[1, 2, 3],
                 [4, 5, 6],
                 [7, 8, 9]])
df = pd.DataFrame(data, columns=('Sensor1231', 'Sensor4221', 'Sensor4673'))

df2 = pd.DataFrame(df.values, df.index,
                   columns=('Sensor1231', 'AccLevel5', 'Sensor4673'))
df

enter image description here

df2

enter image description here

现在重新设置df中的元素并查看df2

中的更改
df.loc[1, 'Sensor4221'] = 999

df2

enter image description here