Python 将函数应用于数据帧

Python 将函数应用于数据帧,python,pandas,Python,Pandas,我有一个地理定位功能,我想应用到不同的数据帧,我通过使用一些其他功能得到。 我想做这样的事情,但我不知道怎么做: deadly.apply(geolocation()) 这是阅读熊猫的代码: import pandas as pd import math names = ["ID", "Vreme", "E", "N", "Ishod", "Tip", "Opis"] my_dataFrame = pd.read_csv("SaobracajBeograd.csv", header = N

我有一个地理定位功能,我想应用到不同的数据帧,我通过使用一些其他功能得到。 我想做这样的事情,但我不知道怎么做:

deadly.apply(geolocation())
这是阅读熊猫的代码:

import pandas as pd
import math

names = ["ID", "Vreme", "E", "N", "Ishod", "Tip", "Opis"]
my_dataFrame = pd.read_csv("SaobracajBeograd.csv",  header = None, names = names)
这是我要应用的函数:

def geolocation():

    #extract only coordinates and convert them to tuple
    coordinates_data = my_dataFrame[["N", "E"]]
    coordinates_data = coordinates_data.apply(tuple, axis=1)

    #add tuple coordinates to list
    coordinate_list = []
    for coord in coordinates_data:
        coordinate_list.append(coord)

    #defult map location
    gmap = gmplot.GoogleMapPlotter(44.797140, 20.513460, 11)

    # Scatter points
    coordinate_lats, coordinate_lons = zip(*coordinate_list)
    gmap.scatter(coordinate_lats, coordinate_lons, 'red', size = 150, marker = False)

    # Draw
    gmap.draw("my_map1.html")

#geolocation()
这是给我数据帧的函数,我想用它来应用函数,以及函数的结果:

def accidents_with_deadly_outcome():

    deadly = my_dataFrame[my_dataFrame["Ishod"] == "Sa poginulim"]
    deadly = deadly[["Ishod", "E", "N"]].reset_index(drop=True)
    return deadly

#print(accidents_with_deadly_outcome())
0  Sa poginulim  20.657460  44.490140
1  Sa poginulim  20.654150  44.468720
2  Sa poginulim  20.536690  44.787231
3  Sa poginulim  20.510760  44.652443
4  Sa poginulim  20.510540  44.884460
5  Sa poginulim  20.471758  44.788613
6  Sa poginulim  20.359841  44.742405
7  Sa poginulim  20.472120  44.763520
8  Sa poginulim  20.610525  44.676290
带有致命后果()的
事故结果:
功能:

def accidents_with_deadly_outcome():

    deadly = my_dataFrame[my_dataFrame["Ishod"] == "Sa poginulim"]
    deadly = deadly[["Ishod", "E", "N"]].reset_index(drop=True)
    return deadly

#print(accidents_with_deadly_outcome())
0  Sa poginulim  20.657460  44.490140
1  Sa poginulim  20.654150  44.468720
2  Sa poginulim  20.536690  44.787231
3  Sa poginulim  20.510760  44.652443
4  Sa poginulim  20.510540  44.884460
5  Sa poginulim  20.471758  44.788613
6  Sa poginulim  20.359841  44.742405
7  Sa poginulim  20.472120  44.763520
8  Sa poginulim  20.610525  44.676290

你有一点工作要做,以达到一个目标,使问题可以更好地阐明。两件事:提供样本数据和预期输出。分离处理数据帧和可视化数据的关注点
pandas.apply()
对于转换地理空间数据最为有效,然后可以将这些数据传递给显示它的对象。如果您可以排除无法重新创建的显示部分,您将获得更好的响应。
apply
需要函数名,而不需要
()
-它通常被称为
“回调”
-
致命。apply(地理位置)
@RichAndrews我稍微更改了我的代码。我只是不知道我的
def geolocation():
函数应该返回什么以便我以后可以使用它。您不想将
apply
与该
geolocation
函数一起使用。您只需要将数据帧作为参数传递给函数(并传递
致命的
数据帧,而不是
我的数据帧
一个)@SergeBallesta您能给我写一个示例代码吗?您需要做一些工作才能得到一个更清晰的答案,以便更好地阐明问题。两件事:提供样本数据和预期输出。分离处理数据帧和可视化数据的关注点
pandas.apply()
对于转换地理空间数据最为有效,然后可以将这些数据传递给显示它的对象。如果您可以排除无法重新创建的显示部分,您将获得更好的响应。
apply
需要函数名,而不需要
()
-它通常被称为
“回调”
-
致命。apply(地理位置)
@RichAndrews我稍微更改了我的代码。我只是不知道我的
def geolocation():
函数应该返回什么以便我以后可以使用它。您不想将
apply
与该
geolocation
函数一起使用。您只需要将数据帧作为参数传递给函数(并传递
致命的
数据帧而不是
我的数据帧
一个)@SergeBallesta您能给我写一个示例代码吗?