小编dl.*_*teo的帖子

使用 MultiIndex 通过 .at 从 pd.DataFrame 中选择显式单元格

我有一个基于多索引的 pd.DataFrame:

import pandas as pd
data = pd.DataFrame([[2, 3], [4, 5], [6, 7], [8, 9], [10, 11], [12, 13]], index=pd.MultiIndex.from_tuples([
            (pd.Timestamp('2019-07-01 23:00:00'), pd.Timestamp('2019-07-01 23:00:00'), 0),
            (pd.Timestamp('2019-07-02 00:00:00'), pd.Timestamp('2019-07-02 00:00:00'), 0),
            (pd.Timestamp('2019-07-02 00:00:00'), pd.Timestamp('2019-07-02 00:00:00'), 0),
            (pd.Timestamp('2019-07-02 01:00:00'), pd.Timestamp('2019-07-02 01:00:00'), 0),
            (pd.Timestamp('2019-07-02 02:00:00'), pd.Timestamp('2019-07-02 02:00:00'), 0),
            (pd.Timestamp('2019-07-02 03:00:00'), pd.Timestamp('2019-07-02 03:00:00'), 0)],
           names=['dt_calc', 'dt_fore', 'positional_index']), columns=['temp', 'temp_2'])

Run Code Online (Sandbox Code Playgroud)

现在我想用列表对象替换单元格(之前将 DataFrame 类型转换为对象):

idx = data.index[0]
data.at[idx, 'temp'] = [1,2,3]
Run Code Online (Sandbox Code Playgroud)

这将产生:

ValueError                                Traceback (most recent call last)
/app/generic_model/modules/feature_engineering/lstm_pre_processing.py in <module>
----> 1 data.at[idx, 'temp'] …
Run Code Online (Sandbox Code Playgroud)

python multi-index dataframe pandas

2
推荐指数
1
解决办法
45
查看次数

标签 统计

dataframe ×1

multi-index ×1

pandas ×1

python ×1