【问题标题】:Remove index from Deedle Frame从 Deedle 框架中删除索引
【发布时间】:2016-08-01 22:07:50
【问题描述】:

假设一个数据框是这样加载的:

let fr = Frame.ReadCsv("somedata.txt", hasHeaders=true, separators="\t") 
             |> Frame.indexRowsDate "Datetime"

它的输出看起来像这样:

                        Open     High     Low      Close    
5/14/2015 7:02:00 AM -> 21.00000 21.01000 21.00000 21.01000 
5/14/2015 7:03:00 AM -> 22.01000 22.01000 22.93000 22.9500  

如何将数据框转换为以下内容:

     Datetime             Open     High     Low      Close    
0 -> 5/14/2015 7:02:00 AM 21.00000 21.01000 21.00000 21.01000 
1 -> 5/14/2015 7:03:00 AM 22.01000 22.01000 22.93000 22.9500  

基本上,如何从 deedle 数据帧中删除索引并转换为数据帧的列。

【问题讨论】:

    标签: f# deedle


    【解决方案1】:

    使用 F# 友好的 Deedle API,您可以使用 addCol 将键添加为新列,然后您可以使用 indexRowsOrdinarilly 将原始键替换为纯数字索引:

    df 
    |> Frame.addCol "Keys" (df |> Frame.mapRows (fun k _ -> k))
    |> Frame.indexRowsOrdinally
    

    或者,第一个也可以命令式地完成,这有点短:

    f.AddColumn("Keys", f.RowKeys)
    f |> Frame.indexRowsOrdinally
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-01-28
      • 1970-01-01
      • 1970-01-01
      • 2014-02-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-12
      相关资源
      最近更新 更多