pandas add multiple columns with apply

Luca

I am currently projecting the latitude, longitude coordinates to a cartesian plane in my pandas data frame. So, I have a method for projection as:

def convert_lat_long_xy(lat, lo):
    return x, y

So this returns a tuple and I can use this method on my dataframe as:

df.apply(lambda x: convert_lat_long_xy(x.latitude, x.longitude), axis=1))

Now, what I would like to do is create two extra columns in my data frame called 'x' and 'y' to hold these values. I know I can do something like:

df['proj'] = df.apply(lambda x: convert_lat_long_xy(x.latitude, x.longitude), axis=1))

But is it possible to add the values to two different columns?

Mohamed Ali JAMAOUI

Yes, you need to convert the output of lambda into pd.Series. Here's an example:

In [1]: import pandas as pd 

In [2]: pd.DataFrame(["1,2", "2,3"], columns=["coord"])
Out[2]: 
  coord
0   1,2
1   2,3

In [3]: df = pd.DataFrame(["1,2", "2,3"], columns=["coord"])

In [4]: df.apply(lambda x: pd.Series(x["coord"].split(",")), axis=1)
Out[4]: 
   0  1
0  1  2
1  2  3

In [5]: df[["x", "y"]] = df.apply(lambda x: pd.Series(x["coord"].split(",")), axis=1)

In [6]: df
Out[6]: 
  coord  x  y
0   1,2  1  2
1   2,3  2  3

For your particular case, df.apply will become like this:

df[['x', 'y']] = df.apply(lambda x: pd.Series(convert_lat_long_xy(x.latitude, x.longitude)), axis=1))

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

Pandas rolling apply using multiple columns

Return multiple columns from pandas apply()

Converting multiple columns to categories in Pandas. apply?

Pandas `apply` into multiple columns consuming lots of memory

Apply "list" function on multiple columns pandas

Apply custom function over multiple columns in pandas

Pandas apply function on dataframe over multiple columns

Pandas update multiple columns using apply function

Pandas apply tuple unpack function on multiple columns

pass output from pandas apply to multiple columns

add multiple columns to pandas dataframe

Apply Python function to multiple Pandas columns

pandas apply and assign to multiple columns

Pandas dataframe, how can I group by multiple columns and apply sum for specific column and add new count column?

pandas groupby apply the same function to multiple columns

Apply (in Pandas) to Multiple Columns

pandas df apply condition on multiple columns

Pandas apply rowwise function on multiple columns

Apply function to multiple pandas columns with Args

Update Multiple Columns using Pandas Apply Function

Python and Pandas: apply per multiple columns

Apply multiple aggregations on multiple columns on a Pandas dataframe

Comparing multiple columns in .apply() pandas

Apply apply() function to multiple columns in pandas?

pandas groupby + multiple aggregate/apply with multiple columns

How to apply a function for multiple columns pandas?

Pandas apply/lambda on multiple columns

How to Apply a function to multiple multiindex columns in Pandas?

How to apply group by function of multiple columns in pandas

TOP Ranking

  1. 1

    Failed to listen on localhost:8000 (reason: Cannot assign requested address)

  2. 2

    pump.io port in URL

  3. 3

    How to import an asset in swift using Bundle.main.path() in a react-native native module

  4. 4

    Loopback Error: connect ECONNREFUSED 127.0.0.1:3306 (MAMP)

  5. 5

    Compiler error CS0246 (type or namespace not found) on using Ninject in ASP.NET vNext

  6. 6

    BigQuery - concatenate ignoring NULL

  7. 7

    Spring Boot JPA PostgreSQL Web App - Internal Authentication Error

  8. 8

    ggplotly no applicable method for 'plotly_build' applied to an object of class "NULL" if statements

  9. 9

    ngClass error (Can't bind ngClass since it isn't a known property of div) in Angular 11.0.3

  10. 10

    How to remove the extra space from right in a webview?

  11. 11

    Change dd-mm-yyyy date format of dataframe date column to yyyy-mm-dd

  12. 12

    Jquery different data trapped from direct mousedown event and simulation via $(this).trigger('mousedown');

  13. 13

    maven-jaxb2-plugin cannot generate classes due to two declarations cause a collision in ObjectFactory class

  14. 14

    java.lang.NullPointerException: Cannot read the array length because "<local3>" is null

  15. 15

    How to use merge windows unallocated space into Ubuntu using GParted?

  16. 16

    flutter: dropdown item programmatically unselect problem

  17. 17

    Pandas - check if dataframe has negative value in any column

  18. 18

    Nuget add packages gives access denied errors

  19. 19

    Can't pre-populate phone number and message body in SMS link on iPhones when SMS app is not running in the background

  20. 20

    Generate random UUIDv4 with Elm

  21. 21

    Client secret not provided in request error with Keycloak

HotTag

Archive