连接两列并获取新列

No_*_*ody 4 python python-2.7 python-3.x pandas

我有2 col

  Latitude       Longitude    
  35.827085869   -95.67496156
Run Code Online (Sandbox Code Playgroud)

两者都处于浮动状态,我希望将其转换为

 Latitude       Longitude       final
 35.827085869   -95.67496156    [35.827085869,-95.67496156]
Run Code Online (Sandbox Code Playgroud)

我该如何实现?

cs9*_*s95 5

将两列转换为列表列表,然后将其分配给新列。

# Pandas < 0.24
# df['final'] = df[['Latitude', 'Longitude']].values.tolist()
# Pandas >= 0.24
df['final'] = df[['Latitude', 'Longitude']].to_numpy().tolist()
df

    Latitude  Longitude                         final
0  35.827086 -95.674962  [35.827085869, -95.67496156]
Run Code Online (Sandbox Code Playgroud)

请注意,它们必须是列表,如果要分配NumPy数组,则不能将它们作为单列分配回去。


另一个选择是agg用于减少:

df['final'] = df[['Latitude', 'Longitude']].agg(list, axis=1)
df

    Latitude  Longitude                         final
0  35.827086 -95.674962  [35.827085869, -95.67496156]
Run Code Online (Sandbox Code Playgroud)