Dataframe 对Deedle数据帧的子数据帧进行切片的最佳方法是什么?
我能够通过两种方式对Dataframe 对Deedle数据帧的子数据帧进行切片的最佳方法是什么?,dataframe,f#,slice,deedle,Dataframe,F#,Slice,Deedle,我能够通过两种方式对Deedle数据帧的子数据帧进行切片: a) 使用df.rows.After提取行,然后使用Frame.ofRows b) 使用Frame.filterRows 但是,只编写df.[someDate..]会更整洁,但这会产生错误。请参阅下面的代码 通过切片数据帧行的连续子集来复制/更新数据帧的最佳方法是什么 open Deedle let dates = [ DateTime(2013,1,1); DateTime(2013,1,4); Date
Deedle数据帧的子数据帧进行切片:
a) 使用df.rows.After
提取行,然后使用Frame.ofRows
b) 使用Frame.filterRows
但是,只编写df.[someDate..]
会更整洁,但这会产生错误。请参阅下面的代码
通过切片数据帧行的连续子集来复制/更新数据帧的最佳方法是什么
open Deedle
let dates =
[ DateTime(2013,1,1);
DateTime(2013,1,4);
DateTime(2013,1,8) ]
let values = [ 10.0; 20.0; 30.0 ]
let first = Series(dates, values)
let second = Series(dates, List.map (fun x -> x * 5.0) values)
let df1 = Frame(["first"; "second"], [first; second])
let someDate = DateTime(2013,1,5)
let df2 = Frame.ofRows (df1.Rows.After someDate)
// Ok, a one-row DataFrame
let f firstDate (dt: DateTime) (x: ObjectSeries<string>) = (dt > firstDate)
let df3 = Frame.filterRows (f someDate) df1
// Ok, a one-row DataFrame
let df4 = df1.[someDate..]
// error FS0039: The field, constructor or member 'GetSlice' is not defined.
opendeedle
让日期=
[日期时间(2013年1月1日);
日期时间(2013年1月4日);
日期时间(2013年1月8日)]
让值=[10.0;20.0;30.0]
let first=系列(日期、值)
让第二个=系列(日期,List.map(乐趣x->x*5.0)值)
设df1=Frame([“first”;“second”],[first;second])
让someDate=DateTime(2013,1,5)
设df2=Frame.ofRows(df1.Rows.After someDate)
//好的,一行数据帧
设f firstDate(dt:DateTime)(x:ObjectSeries)=(dt>firstDate)
设df3=Frame.filterRows(f someDate)df1
//好的,一行数据帧
设df4=df1。[someDate..]
//错误FS0039:未定义字段、构造函数或成员“GetSlice”。
您可以在df1.Rows
或df1.Columns
上使用切片语法。即使对于大多数事情(包括您可以在
之后对它们调用的事实),它们在您通过切片使用它们时返回一个新的数据帧
以下内容应完全满足您的需要:
let df4 = df1.Rows.[someDate..]
您可以在df1.Rows
或df1.Columns
上使用切片语法。即使对于大多数事情(包括您可以在
之后对它们调用的事实),它们在您通过切片使用它们时返回一个新的数据帧
以下内容应完全满足您的需要:
let df4 = df1.Rows.[someDate..]
正是我需要的。谢谢,正是我需要的。谢谢