有一些示例说明如何从这样的数据框中获取单列。
people?Age
people.["Age"]
people.GetColumn("Countries")
但是你怎么能得到多列的一个子集呢?例如,我希望能够执行以下操作:
people.[["age";"Countries"]]
或者
people.GetColumn(["age";"Countries"])
并让它返回一个只有这两列/系列的数据框。有没有一种简单的方法可以做到这一点?
使用Frame.sliceCols
是执行此操作的一种方法,但您也可以使用切片语法。诀窍是在框架上people.Columns
而不是直接在框架上使用切片:
people.Columns.[["age";"Countries"]]
这样做的动机是您可能还想对行进行切片,在这种情况下您可以执行people.Rows.[ [1;3;5 ]
. 如果您的框架有有序的行索引,您可以选择一个范围并执行people.Rows.[1 .. 10]
.
我在框架 API 部分找到了我想要的东西。可以选择多个列,通过以下方式创建一个新框架:
let newFrame = people |> Frame.sliceCols(["age";"Countries"])
我认为当前的文档很棒,但是通过在Manipulating data frames of this page部分添加这样的示例可能会受益。