(require '[clojupyter.misc.helper :as helper]) (helper/add-dependencies '[panthera "0.1-alpha.13"]) :ok (require '[panthera.panthera :as pt]) (require '[libpython-clj.python :as py]) (require '[clojupyter.display :as display]) (defn show [obj] (display/html (py/call-attr obj "to_html"))) (pt/series [1 2 3]) (pt/series [1 2 "a"]) (vec (pt/series [1 2 "a"])) (map inc (pt/series (range 3))) (pt/series {:name "my-series"}) (pt/series 1 {:name "my-series" :index ["idx"]}) (-> (pt/series (range 5) {:name "my-series" :index ["a" "b" "c" "d" "e"]}) (pt/select-rows [0 3])) (-> (pt/series (range 5) {:name "my-series" :index ["a" "b" "c" "d" "e"]}) (pt/select-rows ["a" "d"] :loc)) (-> (pt/series (range 5) {:name "my-series" :index (map #(+ 100 %) (range 5))}) (pt/select-rows [0 3] :iloc)) (-> (pt/series (range 5) {:name "my-series" :index (map #(+ 100 %) (range 5))}) (pt/select-rows [100 103] :loc)) (-> (pt/series (range 5) {:name "my-series"}) (pt/select-rows [0 3] :loc)) (-> (pt/series (range 10)) (pt/select-rows (pt/slice 3 6))) (-> (pt/series (range 5) {:name "my-series" :index ["a" "b" "c" "d" "e"]}) (pt/select-rows (pt/slice "a" "d") :loc)) (pt/add (pt/series [1 2 3]) 1) (pt/pow (pt/series (range 5)) 3) (pt/add (pt/series [1 2 3]) 1 (pt/series [-1 -2 -3])) (pt/mean (pt/series (range 10))) (pt/kurtosis (pt/series (concat (range 10) [100]))) (pt/skew (pt/series (concat (range 10) [100]))) (pt/var (pt/series (concat (range 10) [100]))) (pt/corr (pt/series (range 10)) (pt/series (range 9 0 -1))) (pt/->numeric (pt/series ["1" "2"])) (pt/->datetime "2019-01-01") (pt/->datetime (pt/series ["2019-01-01" "2019-02-01"])) (-> (pt/series ["2019-01-01" "2019-02-01"]) pt/->datetime pt/->clj) (-> (pt/series ["2019-01-01" "2019-02-01"]) pt/->datetime pt/->clj first :unnamed type) (-> (pt/series ["2019-01-01" "2019-02-01"]) pt/->datetime pt/->clj first :unnamed str) (pt/astype (pt/series [1 2 3]) :float32) (pt/cut (pt/series (range 10)) 3) (pt/factorize (pt/series [:a :b :c])) (pt/remap (pt/series [:a :b :c]) {:a "this" :b "that"}) (def remapper (-> (pt/series [:a :b :c :d :e :f :g :h :i :j]) pt/unique (#(zipmap % %)) (assoc "e" "only-this-one"))) (pt/remap (pt/series [:a :b :c :d :e :f :g :h :i :j]) remapper) (pt/rolling (pt/series (range 10)) 2) (-> (pt/series (range 10)) (pt/rolling 2) pt/mean) (pt/dropna (pt/series [1 2 nil 3])) (def my-srs (pt/series [1 2 nil 3])) (pt/dropna my-srs) my-srs (pt/hasnans? (pt/series (concat (range 1000) [nil]))) (pt/all? (pt/not-na? (pt/series (concat (range 1000) [nil])))) (pt/fill-na (pt/series [1 2 nil 4]) 3) (pt/data-frame [{:a 1 :b 2} {:a 3 :b 4}]) (pt/data-frame [(pt/series [1 2 3]) (pt/series [4 5 6])]) (pt/data-frame {:a (pt/series [1 2 3]) :b (pt/series [:x :y :z])}) (pt/dtype (pt/data-frame {:a (pt/series [1 2 3]) :b (pt/series [:x :y :z])})) (def df (pt/data-frame [{:a 1 :b 2} {:a 3 :b 4}])) (pt/index df) (pt/names df) (def df (pt/data-frame (map #(zipmap [:a :b :c] %) (partition 3 (range 30))))) (pt/select-rows df [0 5]) (pt/select-rows df (pt/slice 2 5)) (pt/subset-cols df :a :c) (pt/mean df)