pd merge on multiple columns
new_df = pd.merge(A_df, B_df, how='left', left_on=['A_c1','c2'], right_on = ['B_c1','c2'])
dataframe concatenate
# Pandas for Python
df['col1 & col2'] = df['col1']+df['col2']
#Output
#col1 col2 col1 & col2
#A1 A2 A1A2
#B1 B2 B1B2
concat dataframe from list of dataframe
import pandas as pd
df = pd.concat(list_of_dataframes)
python add multiple columns to pandas dataframe
# Basic syntax:
df[['new_column_1_name', 'new_column_2_name']] = pd.DataFrame([[np.nan, 'word']], index=df.index)
# Where the columns you're adding have to be pandas dataframes
# Example usage:
# Define example dataframe:
import pandas as pd
import numpy as np
df = pd.DataFrame({
'col_1': [0, 1, 2, 3],
'col_2': [4, 5, 6, 7]
})
print(df)
col_1 col_2
0 0 4
1 1 5
2 2 6
3 3 7
# Add several columns simultaneously:
df[['new_col_1', 'new_col_2', 'new_col_3']] = pd.DataFrame([[np.nan, 42, 'wow']], index=df.index)
print(df)
col_1 col_2 new_col_1 new_col_2 new_col_3
0 0 4 NaN 42 wow
1 1 5 NaN 42 wow
2 2 6 NaN 42 wow
3 3 7 NaN 42 wow
# Note, this isn't much more efficient than simply doing three
# separate assignments, e.g.:
df['new_col_1'] = np.nan
df['new_col_2'] = 42
df['new_col_3'] = 'wow'
assign multiple columns pandas
import pandas as pd
df = {'col_1': [0, 1, 2, 3],
'col_2': [4, 5, 6, 7]}
df = pd.DataFrame(df)
df[[ 'column_new_1', 'column_new_2','column_new_3']] = [np.nan, 'dogs',3] #thought this wo
concat 3 column in pandas
In[17]:df['combined']=df['bar'].astype(str)+'_'+df['foo']+'_'+df['new']
In[17]:df
Out[18]:
bar foo new combined
0 1 a apple 1_a_apple
1 2 b banana 2_b_banana
2 3 c pear 3_c_pear