在pandas / python中的数据框中组合两列文本'with changing line'

时间:2018-05-06 06:57:56

标签: python pandas numpy dataframe

Combine two columns of text in dataframe in pandas/python

所以我试图用上面答案给出的解决方案改变一条线。

例如,

   Year     quarter period
0  2014    q1     2014q1
1  2015    q2     2015q2

我希望在“期间”栏中看到的不是2014q1 但是

2014   
 q1

2014年底的q1

我希望当两个不同列的内容合并时,我可以将一列的内容放在不同列的内容之下。

我试过了

dataframe["period"] = dataframe["Year"].map(str) +'\n' + dataframe["quarter"]

但它不起作用。上面的代码给了我

 2014 \n q1

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

使用DataFrame.stack()

df = pd.DataFrame({'Year': [2014,2015], 'period': ['q1','q2']})
df.stack()

它给你:

0  Year      2014
   period      q1
1  Year      2015
   period      q2

第一行(索引)列未在第二行显式打印0而在最后一行显式1,但这些列是隐含的。它的含义与:

相同
0  Year      2014
0  period      q1
1  Year      2015
1  period      q2