微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将数据正确保存到列表中,然后在python中将其转换为DataFrame?

如何解决如何将数据正确保存到列表中,然后在python中将其转换为DataFrame?

我有一个GeoDataFrame,其中包含有关建筑物的信息(Building_Number,几何形状),我需要从中创建另一个GeoDataFrame-包含有关具有相同列(Building_Number,几何形状)的建筑物中心点(质心)的信息。

我的想法是首先创建一个空列表并将结果附加到列表中:

    import geopadnas as gpd
    result = []
    centroids = gpd.GeoSeries(My_GDF.centroid)
    result.append([My_GDF['Buliding_Number'],centroids])
    print(result)

但这对我不起作用,输出为:

[[0     61
1      5
2     22
3    NaN
4      7
5    NaN
6    NaN
7     5D
Name: BUI_NUMBER,dtype: object,0    POINT (21.04572 52.14893)
1    POINT (21.02783 52.07371)
2    POINT (20.97048 52.22921)
3    POINT (20.93536 52.25316)
4    POINT (20.93575 52.25281)
5    POINT (20.93293 52.24256)
6    POINT (20.93444 52.24029)
7    POINT (20.93574 52.25361)
dtype: geometry]]

我认为我需要这样的输出

[[61,5,22,NaN,7,5D],[POINT (21.02783 52.07371,...,POINT (20.93574 52.25361)]]

因为我想将其转换为GeoDataFrame(这,我知道该怎么做)。 有什么方法可以将数据追加到列表中吗?或者,也许我可以将其从现在的输出转换为GDF? 综上所述,我的想法是:

解决方法

您可以使用类似的方法来创建新的GeoDataFrame吗? (顺便说一句,您输入的是“ buliding”键)

df = pandas.DataFrame(
  {
    'BuildingID': My_GDF['Buliding_Number']
  #,centroids however those are put
  }
)

gdf = geopandas.GeoDataFrame(df,geometry=geopandas.points_from_xy(df.Longitude,df.Latitude))

正在https://repl.it/@ToniAlatalo/GeoDataFrame中进行探索

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?