Изменить форму DataFrame с длинного на широкий вдоль одного столбца

Вы можете использовать новую функцию 2.6 mongodb:

db.foo.insert({desc: "This is a string with text"});
db.foo.insert({desc:"This is a another string with Text"});
db.foo.ensureIndex({"desc":"text"});
db.foo.find({
    $text:{
        $search:"text"
    }
});
2
задан cs95 27 March 2019 в 00:23
поделиться

1 ответ

Вы можете установить соответствующий индекс, а затем unstack:

df

  type  x1  x2  x3
0    A   4   6   9
1    A   7   4   1
2    A   9   6   2
3    B   1   3   8
4    B   2   7   9

res = (df.set_index(['type', df.groupby('type').cumcount()])
         .unstack()
         .sort_index(level=-1, axis=1))

res.columns = res.columns.map(lambda x: x[0] + "'" * int(x[1]))    
res
       x1   x2   x3  x1'  x2'  x3'  x1''  x2''  x3''
type                                                
A     4.0  6.0  9.0  7.0  4.0  1.0   9.0   6.0   2.0
B     1.0  3.0  8.0  2.0  7.0  9.0   NaN   NaN   NaN
0
ответ дан cs95 27 March 2019 в 00:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: