Соединить ряд панд с колонкой - PullRequest
0 голосов
/ 31 октября 2018

У меня есть этот ряд данных:

df = pd.DataFrame({'make':'toyota', 'model':'yaris'}, index=[0])
df

    make    model
0   toyota  yaris

И есть этот другой столбец данных:

df_prices = pd.DataFrame({'prices':[1,2,3,4]})
df_prices

    prices
0   1
1   2
2   3
3   4

И я хотел бы присоединиться к ним, чтобы получить:

    make    model   prices
0   toyota  yaris   1
1   toyota  yaris   2
2   toyota  yaris   3
3   toyota  yaris   4

Ответы [ 2 ]

0 голосов
/ 31 октября 2018

Что насчёт этого,

print pd.merge(df,df_prices,left_index=True,right_index=True,how='outer').fillna(method='ffill')

Python 3:

print(pd.merge(df,df_prices,left_index=True,right_index=True,how='outer').fillna(method='ffill'))

Для более конкретной информации,

print pd.concat([df,df_prices],axis=1).ffill()

Выход:

     make  model  prices
0  toyota  yaris       1
1  toyota  yaris       2
2  toyota  yaris       3
3  toyota  yaris       4
0 голосов
/ 31 октября 2018

Попробуйте:

df=df_prices.join(df).ffill()
print(df)

   prices    make  model
0       1  toyota  yaris
1       2  toyota  yaris
2       3  toyota  yaris
3       4  toyota  yaris

Если заботиться о столбцах:

df=df[['make','model','prices']]
print(df)

     make  model  prices
0  toyota  yaris       1
1  toyota  yaris       2
2  toyota  yaris       3
3  toyota  yaris       4

join + ffill !!!

Обновление (благодаря комментарию @ larsr):

df=df.join(df_prices, how='outer').ffill()
print(df)

Сделал бы это, а также исправил бы порядок столбцов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...