-1

Can someone guide me how to add a new column with custom data in existing datafram in pandas by reviwing following code

rows = [] sort = '' for v in results:

        row = {'date':v['TimePeriod']['Start']}
        sort = v['TimePeriod']['Start']
        for i in v['Groups']:
            key = i['Keys'][0]
            if key in self.accounts:
                key = self.accounts[key][ACCOUNT_Name]
            row.update({key:int(float(i['Metrics']['UnblendedCost']['Amount']))}) 
        if not v['Groups']:
            row.update({'Total':int(float(v['Total']['UnblendedCost']['Amount']))})
        rows.append(row)  
    
    df = pd.DataFrame(rows)

    df.set_index('date', inplace= True)
    
    df = df.fillna(0.0)
    
    if Style == 'Change':
        dfc = df.copy()
        lastindex = None
        for index, row in df.iterrows():
            if lastindex:
                for i in row.index:
                    try:
                        df.at[index,i] = dfc.at[index,i] - dfc.at[lastindex,i]
                    except:
                        logging.exception("Error")
                        df.at[index,i] = 0
            lastindex = index
    df = df.T
    df = df.sort_values(sort, ascending=False)
    self.reports.append({'Name':Name,'Data':df, 'Type':type})
    
  • 1
    Does this answer your question? [Adding new column to existing DataFrame in Python pandas](https://stackoverflow.com/questions/12555323/adding-new-column-to-existing-dataframe-in-python-pandas) – BenHeid May 18 '21 at 17:41

1 Answers1

1

you can just add a list with same shape like :

d = {'col1': [1,2], 'col2': [3, 5,]}
value_add=[1,2]
df2= pd.DataFrame(data=d)
df2['col3']=value_add
Tomo
  • 71
  • 1
  • 7