I am saving data in csv using pandas dataframe.
new_data = pd.DataFrame()
for i in results:
Customerid = i[0]
JOININGDATE = i[1]
jdate = i[1].strftime('%Y-%m-%d')
td=datetime.datetime.now().date()
bd=datetime.date(JOININGDATE.year,JOININGDATE.month,JOININGDATE.day)
age_years=int((td-bd).days /365.25)
BuisnessAge = age_years
data = pd.DataFrame(Customerid,jdate,BuisnessAge, columns=['CustomerID', 'JOININGDATE', 'BuisnessAge'])
new_data = new_data.append(data,sort=False)
new_data = new_data.drop_duplicates()
pd.DataFrame(...)
(roughly) leads to pd.DataFrame.__init__(...)
, that's why __init__
is part of the error message.
The actual error is this: The signature of pd.DataFrame(...)
is:
pandas.DataFrame(data=None, index=None, columns=None, dtype=None, copy=False)
You called:
pd.DataFrame(Customerid,jdate,BuisnessAge, columns=['CustomerID', 'JOININGDATE', 'BuisnessAge'])
So:
data=Customerid,
index=jdate,
columns=BuisnessAge,
columns=['CustomerID', 'JOININGDATE', 'BuisnessAge']
Thus you defined columns
multiple times, which combined leads to your error __init__() got multiple values for keyword argument 'columns'
.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.