DataFrames 操作メソッドの比較

RedAmberの基本的な操作メソッドを Python pandas, R Tidyverse, Julia DataFrames と比較します。

列 (variables) を選択する

機能 RedAmber Tidyverse ® pandas DataFrames.jl
列を選択して dataframe で返す pick, drop, [] dplyr::select, dplyr::select_if [], loc[], iloc[], drop, select_dtypes [], select
列を選択して vector で返す [], v dplyr::pull, [, x] [], loc[], iloc[] [!, :x]
列の順番を入れ替えた dataframeを返す pick, [] relocate [], reindex, loc[], iloc[] select,transform

行 (records, observations) を選択する

機能 RedAmber Tidyverse ® pandas DataFrames.jl
論理値に従って行を選択して dataframe で返す slice, filter, remove, [] dplyr::filter [], filter, query, loc[] filter
インデックスで行を選択して dataframe で返す slice, remove, [] dplyr::slice iloc[], drop subset
行の順番を入れ替えた dataframeを返す slice, [] dplyr::filter, dplyr::slice reindex, loc[], iloc[] permute

列を更新する / 新しい列を作る

機能 RedAmber Tidyverse ® pandas DataFrames.jl
既存の列の内容を変更する assign dplyr::mutate assign, []= mapcols
新しい列を作成する assign, assign_left dplyr::mutate apply insertcols,.+
新しい列を作成し、残りは捨てる new transmute (dfply:)transmute transform,insertcols,mapcols
列の名前を変更する rename dplyr::rename, dplyr::rename_with, purrr::set_names rename, set_axis rename
dataframe をソートする sort dplyr::arrange sort_values sort

dataframe を変形する

機能 RedAmber Tidyverse ® pandas DataFrames.jl
列を行に積む (long dataframe にする) to_long tidyr::pivot_longer melt stack
行を列に集める (wide dataframe にする) to_wide tidyr::pivot_wider pivot unstack
wide dataframe を転置する transpose transpose, t transpose, T permutedims

グループ化

機能 RedAmber Tidyverse pandas DataFrames.jl
グループ化する group, group.summarize dplyr::group_by %>% dplyr::summarise groupby.agg combine,groupby

dataframes または tables を結合する

機能 RedAmber Tidyverse pandas DataFrames.jl
列として連結する (横方向に連結する) merge, bind_cols dplyr::bind_cols concat combine
行として連結する (縦方向に連結する) concatenate, concat, bind_rows dplyr::bind_rows concat transform
一致した行だけを連結する (内部結合) inner_join, join dplyr::inner_join merge innerjoin
全ての行を残して連結する (外部結合) full_join, outer_join, join dplyr::full_join merge outerjoin
左の一致した値を残して連結する (左外部結合) left_join, join dplyr::left_join merge leftjoin
右の一致した値を残して連結する (右外部結合) right_join, join dplyr::right_join merge rightjoin
左の行のうち、右と一致したものを返す semi_join, join dplyr::semi_join [isin] semijoin
左の行のうち、右と一致しなかったものを返す anti_join, join dplyr::anti_join [isin] antijoin
左か右のどちらかに現れる行を返す union dplyr::union merge
左とみごの両方に現れる行を返す intersect dplyr::intersect merge
左にはあるが右にはない行を返す difference, setdiff dplyr::setdiff merge