How to append a list to dataframe without using column names?
10,197
Solution 1
You can do something like
df.loc[len(df)] = [1, 2, 3, 4]
Solution 2
if you will be adding more than one row, you should use the concat
function. Which will require you to add the new data in a DataFrame
first.
df3 = pd.concat([df1, df2], ignore_index=True)
Read more in the docs here.
Author by
Rahul Rai
Updated on June 25, 2022Comments
-
Rahul Rai almost 2 years
I want to append a list of four prices
[1, 2, 3, 4]
to an already existing dataframe using theDataFrame.append()
, the already existing dataframe has four columns.Using this
dataframe = pd.DataFrame(columns=["open", "high", "low", "close"], data = [[1, 2, 3, 4]])
Creates the dataframe
open high low close 0 1 2 3 4
Then I want to append some lists like this:
dataframe = dataframe.append([[5, 6, 7, 8]], ignore_index =True)
Gives the output
open high low close 0 1 2 3 0 1.0 2.0 3.0 4.0 NaN NaN NaN NaN 1 NaN NaN NaN NaN 5.0 6.0 7.0 8.0
While I want the list to be appended in continuation to the dataframe, is there a way to do this without using the column names, only the list of four prices?
-
Slayer about 5 yearsI think OP wants to append a list to a dataframe. Here
pd.concat
will concatenate two dataframes. -
mostafazh about 5 years@Prerit I know, I also saw that he said "then I want to append some lists like this", keyword lists.
-
Slayer about 5 yearsYea, totally missed the "some" word. My bad. He need to convert the list of list to a dataframe and concatenate.
-
Mohd almost 4 yearsHow about if the added row is not complete,
df.loc[len(df)] = [1, 2, 3]
, which would result in size mismatch? -
Christian Vincenzo Traina almost 3 yearsThe output is like the OP one