我有以下数据帧
import pandas as pd
df_county = pd.DataFrame({
"A": [50],
"B": [60],
"C": [70]})
df_voronoi = pd.DataFrame({
"area": [1000, 2000, 3000, 4000],
"county": ["A", "B", "C", "A"],
"bus":["bus1", "bus4", "bus20", "bus2"]})
我使用以下函数计算我的值:
def calc(df1, df2):
return [1/(df1[county] / area) for county,area in zip(df2.county, df2.area)]
df=calc(df_county,df_voronoi)
df=pd.DataFrame(df)
print(df)
结果:
这里county
是索引。我希望将county
作为自己的列,并且希望将Voronoi数据帧中的bus
-列作为与county
和area
具有正确关系的列
Thas表示我希望函数的输出如下所示:
如何认识到这一点
还有一个问题: 在什么位置定义函数重要吗?我有一个例子,其中函数是在顶部创建的,返回的类型是Dataframe。在这个例子中,它是一个列表,我必须从列表中创建一个数据帧。如果是,你能解释一下原因吗
我想你需要对你现有的结构稍作修改。试试这个
添加了area列,否则我们无法确定需要哪条总线(因为df2中有两个A)
相关问题 更多 >
编程相关推荐