【发布时间】:2022-01-16 03:18:55
【问题描述】:
我有几个函数可以过滤不同客户特征的数据框并返回过滤后的数据框,如下所示:
stg_1 = strategy_1_filtering(df_1)
stg_2 = strategy_2_filtering(df_2)
现在,我根据客户 ID 和策略制作一个邻接矩阵:
d = {'stg_1':stg_1['Customer_ID'],'stg_2':stg_2['Customer_ID']}
df = pd.DataFrame({k: dict.fromkeys(v, True) for k, v in d.items()}).fillna(False)
结果是这样的:
| stg_1 | stg_2 | |
|---|---|---|
| 385986.0 | True | True |
| 363015.0 | True | False |
| 411847.0 | True | True |
| 413369.0 | True | True |
| 401081.0 | True | False |
我已尝试使用此代码更改第一列的名称:
df.columns.values[0] = "Customer_ID"
但它没有工作。为了理解我打印了数据框的形状和列名的问题:
print(df.shape)
print(df.columns)
结果:
(1155, 2)
Index(['stg_1', 'stg_2'], dtype='object')
在这种情况下,当数据框连第一列都检测不到时,我该怎么办?
【问题讨论】: