重塑,合并,连接熊猫数据框

py

我有一个如下的df:

df = pd.DataFrame({"location":["north", "south","north"], "store": ["a","b","c"], "date" : ["02112018","02152018","02182018"], "barcode1":["ok", "low","ok"], "barcode2": ["low","zero","zero"], "barcode3": ["ok","zero","low"]})

df

我想拥有的如下:

df_desired

我要做的是用下面的代码重复每一行,条形码的次数:

df_1 = pd.DataFrame(np.repeat(df.iloc[:,:3].values,len(df.iloc[0,:3:]),axis=0))
df_1.columns = df.columns[:3]

并具有以下输出:

df_1

但是我不知道如何到达df_desired。对不起,我找不到合适的标题。任何帮助,将不胜感激。

政治科学家

您可以通过给您所需的行顺序pd.melt来取消数据框的透视.sort_valuesstore

pd.melt(
    df, 
    id_vars=['location', 'store', 'date'], 
    var_name='barcode', 
    value_name='control').sort_values(by=['store'])

  location store      date   barcode control
0    north     a  02112018  barcode1      ok
3    north     a  02112018  barcode2     low
6    north     a  02112018  barcode3      ok
1    south     b  02152018  barcode1     low
4    south     b  02152018  barcode2    zero
7    south     b  02152018  barcode3    zero
2    north     c  02182018  barcode1      ok
5    north     c  02182018  barcode2    zero
8    north     c  02182018  barcode3     low

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章