python reindex不显示列值

我正在JupyterLab中使用python 3.7和pandas并尝试使用reindex在MultiIndex表中添加缺失的行(index应该是具有Col1和Col2元素的产品)。

df2 = pd.DataFrame({'Col1': [10, 11, 12, 12, 12, 11,],
                   'Col2': ['2012', '2012', '2013', '2014', '2015', '2012'],
                   'result': [1, 1, 1, 1, 1, 1]})

start, end = df2['Col1'].min(), df2['Col1'].max()
Col2_values = df2['Col2'].sort_values().unique()
newIndex = pd.MultiIndex.from_product( [range(start, end+1), Col2_values ], names=['Col1', 'Col2'],)
 
df2 = df2.reindex( newIndex, columns=['result'] )
print(df2)

它显示的是:

           result
Col1 Col2        
10   2012     NaN
     2013     NaN

有人可以告诉我如何保存列结果的值吗?

耶斯列尔

使用DataFrame.set_indexMultiIndex来自col1col2针对reindex通过MultiIndex,否则reindex使用默认值RangeIndex0-6),没有价值的比赛,并得到所有NaNS是输出列:

#last year is 2016
df2 = pd.DataFrame({'Col1': [10, 11, 12, 12, 12, 11,],
                   'Col2': ['2012', '2012', '2013', '2014', '2015', '2016'],
                   'result': [1, 1, 1, 1, 1, 1]})

start, end = df2['Col1'].min(), df2['Col1'].max()
Col2_values = df2['Col2'].sort_values().unique()
newIndex = pd.MultiIndex.from_product( [range(start, end+1), Col2_values ], 
                                       names=['Col1', 'Col2'],)
print (newIndex) 
MultiIndex([(10, '2012'),
            (10, '2013'),
            (10, '2014'),
            (10, '2015'),
            (10, '2016'),
            (11, '2012'),
            (11, '2013'),
            (11, '2014'),
            (11, '2015'),
            (11, '2016'),
            (12, '2012'),
            (12, '2013'),
            (12, '2014'),
            (12, '2015'),
            (12, '2016')],
           names=['Col1', 'Col2'])

df2 = df2.set_index(['Col1','Col2']).reindex( newIndex, columns=['result'] )
print(df2)
           result
Col1 Col2        
10   2012     1.0
     2013     NaN
     2014     NaN
     2015     NaN
     2016     NaN
11   2012     1.0
     2013     NaN
     2014     NaN
     2015     NaN
     2016     1.0
12   2012     NaN
     2013     1.0
     2014     1.0
     2015     1.0
     2016     NaN

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

修复不显示两个值的python代码

来自分类Dev

Python积分计算器不显示值

来自分类Dev

unique()不显示Python中的所有值

来自分类Dev

Python sys.argv[0] 不显示 -c 值

来自分类Dev

Python Tkinter,画布不显示

来自分类Dev

Python Selenium不显示文本

来自分类Dev

不显示python OpenCV错误

来自分类Dev

我的显示模块不显示(Python 2.7)

来自分类Dev

我的显示模块不显示(Python 2.7)

来自分类Dev

Python子类不显示父类属性

来自分类Dev

VSCode不显示python脚本错误输出

来自分类Dev

Python asyncio不显示任何错误

来自分类Dev

Python子图不显示图例

来自分类Dev

Python:计算机选择不显示

来自分类Dev

OpenCV / Python:不显示图像轮廓

来自分类Dev

Python 程序不显示 print() 并自行关闭

来自分类Dev

Python 与 Seleneium Webdriver .text 不显示

来自分类Dev

Google 应用引擎 (python) 不显示图像

来自分类常见问题

在pyspark数据框中显示不同的列值:python

来自分类Dev

Python按列分组数组并显示唯一值

来自分类Dev

如何在Python Pandas的列中显示重复值的范围?

来自分类Dev

显示axhline值python

来自分类Dev

不显示ListAdapter值

来自分类Dev

Python PrettyPrinter显示对象地址,但不显示内容

来自分类Dev

空值的“ Pandas数据透视表”列不显示

来自分类Dev

数据网格列值不显示 c# winform

来自分类Dev

VSTS - 查询工作量列不显示值

来自分类Dev

显示(打印)列Python

来自分类Dev

Python Reindex产生Nan