I have this dataframe:
import pandas as pd
import numpy as np
import datetime
def creatingDataFrame():
dateList=[]
dateList.append(datetime.date(2002,1,1))
dateList.append(datetime.date(2002,2,1))
dateList.append(datetime.date(2002,1,1))
dateList.append(datetime.date(2002,1,1))
dateList.append(datetime.date(2002,2,1))
raw_data = {'Date': dateList,
'Company': ['A', 'B', 'B', 'C' , 'C'],
'var1': [10, 20, 30, 40 , 50]}
df = pd.DataFrame(raw_data, columns = ['Date','Company', 'var1'])
df.loc[1, 'var1'] = np.nan
return df
if __name__=="__main__":
df=creatingDataFrame()
print(df)
Date Company var1
0 2002-01-01 A 10.0
1 2002-02-01 B NaN
2 2002-01-01 B 30.0
3 2002-01-01 C 40.0
4 2002-02-01 C 50.0
I would like to transform this data in the following dataframe:
Date A B C
0 2002-01-01 10 30 40
1 2002-02-01 NaN NaN 50
The only way that I see how to do that is by filtering by each company and merging each result, but there must be an easy way to do that (?).