python-在每个组上方添加每个组的名称
我有一个excel文件,其中样本按行列出,属性按列列出。 我正在使用python按一个或多个属性对样本进行分组,并使用xlsxwriter进行导出。 是否有办法在组上方的行中自动插入每个组的标题python-在每个组上方添加每个组的名称,python,pandas,Python,Pandas,我有一个excel文件,其中样本按行列出,属性按列列出。 我正在使用python按一个或多个属性对样本进行分组,并使用xlsxwriter进行导出。 是否有办法在组上方的行中自动插入每个组的标题 type1 = ['a', 'c', 'e'] t1 = result.loc[df['Name'].isin(type1)] type2 = ['b','f'] t2 = result.loc[df['Name'].isin(type2)] group_by_type = [t1, t2] 编辑
type1 = ['a', 'c', 'e']
t1 = result.loc[df['Name'].isin(type1)]
type2 = ['b','f']
t2 = result.loc[df['Name'].isin(type2)]
group_by_type = [t1, t2]
编辑
您可以将
concat
与键一起使用
参数:
np.random.seed(0)
df1 = pd.DataFrame(np.random.choice(10, (3, 3)), columns=list('ABC'))
df2 = pd.DataFrame(np.random.choice(10, (3, 3)), columns=list('DEF'))
titles = ['first', 'second']
pd.concat([df1, df2], keys=titles, axis=1)
first second
A B C D E F
0 5 0 3 4 7 6
1 3 7 9 8 8 1
2 3 5 2 6 7 7
谢谢我将axis设置为0,这样列表就不会从左向右展开。但是,在我的xlsxwriter中,我的index=False并删除了A列中的标题名称。有没有办法在保留组标题的同时删除索引(或者至少不将其导出到excel?@user3479562如果您尝试类似于
pd.concat([df1,df2],keys=titles,axis=1)。T.to_csv('file.csv',header=False)的方法呢
?header=false删除了顶行,但保留了索引。回到我原来的问题:type1=['a','c','e']t1=result.loc[df['attribute'].isin(type1)]
titles=['title1','title2']]result2=pd.concat([t1,t2],keys=titles,axis=0)
是否有办法从isin(type1)
中提取组名?因为如果我重新排序组,我必须手动重新做“标题”。@user3479562也许你可以提供一个,显示你问题中的一些数据行,作为文本粘贴到帖子中。。。我可以通过这种方式提供更具体的解决方案。我添加了更多信息。你能给我指一下正确的方向吗?
np.random.seed(0)
df1 = pd.DataFrame(np.random.choice(10, (3, 3)), columns=list('ABC'))
df2 = pd.DataFrame(np.random.choice(10, (3, 3)), columns=list('DEF'))
titles = ['first', 'second']
pd.concat([df1, df2], keys=titles, axis=1)
first second
A B C D E F
0 5 0 3 4 7 6
1 3 7 9 8 8 1
2 3 5 2 6 7 7