为了账号安全,请及时绑定邮箱和手机立即绑定

如何将数据框所有行的某些列附加到另一个数据框

如何将数据框所有行的某些列附加到另一个数据框

慕娘9325324 2023-04-18 17:19:53
我有 3 个数据框:dataframe_1:              A B C D              1 E 2 F              3 G 4 Hdataframe_2:              A B C D              5 I 6 J              7 K 8 Ldf_columns = ['username', 'reason']dataframe_3 = pd.DataFrame(columns=df_columns)我想将所有行添加到dataframe_1Butdataframe_2中dataframe_3 ,但映射如下:dataframe_3.append(dataframe_1['A','reason 1'])dataframe_3.append(dataframe_2['A','reason 2'])最终得到:  dataframe_3:               username reason               1        reason 1               3        reason 1               5        reason 2               7        reason 2               因此,本质上使用列A并将其映射到username每个数据框并具有特定原因。关于如何实现这一目标的任何想法?
查看完整描述

2 回答

?
POPMUISE

TA贡献1765条经验 获得超5个赞

你的意思是:


(pd.concat((df1[['A']].assign(reason='reason 1'), 

            df2[['A']].assign(reason='reason 2'))

          )

   .rename(columns={'A':'username'})

)


查看完整回答
反对 回复 2023-04-18
?
繁星点点滴滴

TA贡献1803条经验 获得超3个赞

这对我有用:


import pandas as pd


dataframe_1 = pd.DataFrame(

    {'A': [1, 3], 'B': ['E', 'G'], 'C': [2, 4], 'D': ['F', 'H']})



dataframe_2 = pd.DataFrame(

    {'A': [5, 7], 'B': ['I', 'K'], 'C': [6, 8], 'D': ['J', 'L']})


df_columns = ['username', 'reason']

dataframe_3 = pd.DataFrame(columns=df_columns)


for count, number in enumerate(dataframe_1['A']):

    dataframe_3.at[count, 'username'] = number

    dataframe_3.at[count, 'reason'] = 'reason 1'


for count, number in enumerate(dataframe_2['A'], count + 1):

    dataframe_3.at[count, 'username'] = number

    dataframe_3.at[count, 'reason'] = 'reason 2'


print(dataframe_3)

输出:


  username    reason

0        1  reason 1

1        3  reason 1

2        5  reason 2

3        7  reason 2


查看完整回答
反对 回复 2023-04-18
  • 2 回答
  • 0 关注
  • 118 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信