小编emb*_*pea的帖子

pandas DataFrame concat/update("upsert")?

我正在寻找一种优雅的方法将所有行从一个DataFrame附加到另一个DataFrame(两个DataFrame具有相同的索引和列结构),但是如果两个DataFrame中都出现相同的索引值,请使用第二个数据中的行帧.

所以,例如,如果我开始:

df1:
                    A      B
    date
    '2015-10-01'  'A1'   'B1'
    '2015-10-02'  'A2'   'B2'
    '2015-10-03'  'A3'   'B3'

df2:
    date            A      B
    '2015-10-02'  'a1'   'b1'
    '2015-10-03'  'a2'   'b2'
    '2015-10-04'  'a3'   'b3'
Run Code Online (Sandbox Code Playgroud)

我希望结果如下:

                    A      B
    date
    '2015-10-01'  'A1'   'B1'
    '2015-10-02'  'a1'   'b1'
    '2015-10-03'  'a2'   'b2'
    '2015-10-04'  'a3'   'b3'
Run Code Online (Sandbox Code Playgroud)

这类似于我认为在某些SQL系统中称为"upsert"的内容---更新和插入的组合,在某种意义上,每行来自df2(a)用于更新现有行,df1如果行键已经存在于df1,或(b)df1如果行密钥尚不存在则插入到末尾.

我想出了以下内容

pd.concat([df1, df2])     # concat the two DataFrames
    .reset_index()        # turn 'date' into a regular column
    .groupby('date')      # group rows by values in the 'date' column
    .tail(1) …
Run Code Online (Sandbox Code Playgroud)

python pandas

24
推荐指数
2
解决办法
5019
查看次数

防止流星下载包更新

我的笔记本电脑上有一个流星应用程序(我在应用程序上进行开发工作),我希望能够使用它和/或在我没有互联网连接的情况下进行演示.

如何防止meteor在运行时自动尝试下载更新到包,以便我可以在"离线"情况下运行我的应用程序而不会出现问题?

请注意,这与客户端(浏览器)无法连接到服务器的"离线"不同.在这种情况下,客户端和服务器位于同一台计算机上,客户端可以访问服务器.但是机器与互联网断开连接,因此尝试自动下载软件包更新将导致至少延迟,如果不是错误,我想阻止它.

meteor

5
推荐指数
1
解决办法
1471
查看次数

matplotlib 等高线图 geojson 输出?

我正在使用 python matplotlib 从温度数据的二维数组(存储在 NetCDF 文件中)生成等高线图,并且我有兴趣将等高线多边形和/或线条导出为 geojson 格式,以便我可以在 matplotlib 之外使用它们。我发现“pyplot.contourf”函数返回一个“QuadContourSet”对象,该对象具有包含轮廓坐标的“collections”属性:

contourSet = plt.contourf(data, levels)
collections = contourSet.collections
Run Code Online (Sandbox Code Playgroud)

有谁知道 matplotlib 是否有办法将“集合”中的坐标导出为各种格式,特别是 geojson?我搜索了 matplotlib 文档和网络,但没有找到任何明显的结果。

谢谢!

matplotlib contour geojson

4
推荐指数
1
解决办法
3432
查看次数

标签 统计

contour ×1

geojson ×1

matplotlib ×1

meteor ×1

pandas ×1

python ×1