开发者社区> 问答> 正文

如何基于列值扩展数据框?

我有一个数据框:

utc  arc_time_s tec_tecu    elevation_deg   lat_e_deg   lon_e_deg
01.01.2018 01:19    54  3.856   17.35   57.44   25.02
01.01.2018 01:19    53  4.021   17.29   57.47   25.03
01.01.2018 01:19    52  4.029   17.22   57.51   25.05
01.01.2018 01:19    51  4.015   17.15   57.54   25.07
01.01.2018 01:19    50  3.997   17.08   57.57   25.09

我想要的是基于lat_e_deg列扩展数据框,使所有值的小数位数为2。

我发现该方法重新采样,但似乎只能用于日期时间列。

因此,作为输出,我想要这样:

我怎样才能做到这一点?

问题来源:stackoverflow

展开
收起
is大龙 2020-03-24 22:54:41 508 0
1 条回答
写回答
取消 提交回答
  • import pandas as pd
    import numpy as np
    
    # reconstruct part of your DataFrame for testing purposes:
    df = pd.DataFrame([[17.35, 57.44], [17.29, 57.47], [17.22, 57.51]], 
                     columns = ['elevation_deg', 'lat_e_deg'])
    
    # create a Series of the desired stepwise values:
    lat_e_deg_expanded = pd.Series(np.arange(start = min(df['lat_e_deg']), 
                                             stop = max(df['lat_e_deg']), 
                                             step = 0.01), 
                                   name = 'lat_e_deg')
    
    # merge the expanded series with the original DataFrame and sort:
    df_expanded = pd.merge(df, lat_e_deg_expanded, 
                           on = 'lat_e_deg', 
                           how = 'outer')
    df_expanded.sort_values(by = 'lat_e_deg', inplace = True)
    

    回答来源:stackoverflow

    2020-03-24 22:54:49
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载