在 pandas 数据框列上操作时如何使用 hy

how to use hy to when operating on pandas dataframe columns

似乎没有关于如何在单列 pandas 操作上使用 hy 的文档,如下所示。非常感谢任何帮助:

# simple instantiation to scalar
df['a'] = '2'
# the above can be done like so: (-> df (.assign :a "2")) but would appreciate any better ways

# cast a column to int
df['a'] = df['a'].astype(int)
# creating  derived columns
df['c'] = df['a'] + df['b']
#subsetting by columns
dd = df[['a','b']]
#subsetting by criteria
dd = df[(df['a'] > 1) & (df['b'] < 2)]

pandas 实际上并没有改变 Python 本身的语法或语义;它只是使用运算符重载。因此,您可以毫无问题地使用相同运算符的 Hy 等价物,尽管 helper macros 可以使 pandas 更加方便。

; simple instantiation to scalar
(setv (get df "a") "2")
; cast a column to int
(setv (get df "a") (.astype (get df "a") int))
; creating  derived columns
(setv (get df "c") (+ (get df "a") (get df "c")))
;subsetting by columns
(setv dd (get df ["a" "b"]))
;subsetting by criteria
(setv dd (get df (& (> (get df "a") 1) (< (get df "b") 2))))