在 daru 中设置放大

Setting With Enlargement in daru

daru? Something similar to pandas with loc.

中有一些设置放大的方法

是的,你可以。

对于 Daru::Vector 对象使用 #push 方法,如下所示:

require 'daru'
v = Daru::Vector.new([1,2,3], index: [:a,:b,:c])
v.push(23, :r)
v
#=> 
#<Daru::Vector:74005360 @name = nil @size = 4 >
#    nil
#  a   1
#  b   2
#  c   3
#  r  23

要在 Daru::DataFrame 中设置新向量,请在 [] 中使用您的新名称调用 #[]= 方法。您可以分配 Daru::VectorArray.

如果您分配 Daru::Vector,数据将对齐,以便 DataFrame 和 Vector 的索引匹配。

例如,

require 'daru'
df = Daru::DataFrame.new({a: [1,2,3], b: [5,6,7]})
df[:r] = [11,22,33]
df
# => 
#<Daru::DataFrame:73956870 @name = c8a65ffe-217d-43bb-b6f8-50d2530ec053     @size = 3>
#                    a          b          r 
#         0          1          5         11 
#         1          2          6         22 
#         2          3          7         33 

您使用 DataFrame#row[]= 方法分配一行。例如,使用之前的数据框 df:

df.row[:a] = [23,35,2]
df
 #=> 
 #<Daru::DataFrame:73956870 @name = c8a65ffe-217d-43bb-b6f8-50d2530ec053  @size = 4>
 #                    a          b          r 
 #         0          1          5         11 
 #         1          2          6         22 
 #         2          3          7         33 
 #         a         23         35          2 

分配 Daru::Vector 将根据 Daru::DataFrame.

的向量名称对齐

您可以在 these notebooks 中查看更多详细信息。

希望这能回答您的问题。