ExcelユーザーのためのExploratory関数ガイド

数値関数

Excel関数名 概要 ブログ ドキュメント
AVERAGE 平均を計算する mean
SUM 合計を計算する sum
PRODUCT 掛け算した合計を求める prod
SUMPRODUCT セルの範囲同士をかけた合計を求める sum(列名1 * 列名2)
COUNT 行数を数える n
<なし> 一意な値を数える n_distinct
COUNTA 空白でないセルを数える sum(!is.na())
COUNTIF 条件に一致するセルを数える sum(<条件式>)
COUNTIFS 複数条件に一致するセルを数える sum(<条件式1>&<条件式2>)
ROUND 四捨五入する 数値データの小数点の数を調整したい(四捨五入、切り捨て、切り上げ) round
ROUNDDOWN 切り捨てする 数値データの小数点の数を調整したい(四捨五入、切り捨て、切り上げ) floor
ROUNDUP 切り上げする 数値データの小数点の数を調整したい(四捨五入、切り捨て、切り上げ) ceiling
MAX 最大値を取得する max
MEDIAN 中央値を取得する median
MIN 最小値を取得する min
<なし> 最頻値を取得する get_mode
INT 数値から整数を取得する as.integer, trunc
MOD 余りを取得する %% (例: 56 %% 10)
RAND 少数の乱数を生成する
RANDBETWEEN 整数の乱数を生成する
<なし> 正規分布に従って乱数を生成する rnorm(n())
<なし> 一様分布に従って乱数を生成する runif(n())
RANK 昇順での順位の値を取得する(ギャップ有) min_rank(列名)
RANK 降順での順位の値を取得する(ギャップ有) min_rank(-列名)
RANK 昇順での順位の値を取得する(ギャップ無) dense_rank(列名)
RANK 降順での順位の値を取得する(ギャップ無) dense_rank(-列名)
PERCENTRANK パーセンタイル(100分位)で昇順の順位を取得する percent_rank(列名)
PERCENTRANK パーセンタイル(100分位)で降順の順位を取得する percent_rank(-列名)

文字列操作

Excel関数名 概要 ブログ ドキュメント
UPPER 文字列を大文字に変換する アルファベットの文字を大文字や小文字にする方法 str_to_upper
LOWER 文字列を小文字に変換する アルファベットの文字を大文字や小文字にする方法 str_to_lower
PROPER 単語の先頭だけを大文字に変換する アルファベットの文字を大文字や小文字にする方法 str_to_title
ASC 文字列を全角から半角に変換する
JIS 文字列を半角から全角に変換する 半角が混在する文字列を全角に統一する方法 str_normalize
LEFT 文字列の先頭から抽出する 範囲を指定して文字列を取り出したい str_sub
MID 文字列の途中から抽出する 範囲を指定して文字列を取り出したい str_sub
RIGHT 文字列の最後から抽出する 範囲を指定して文字列を取り出したい str_sub
LEN 文字列の文字数を取得する str_length
SUBSTITUTE 文字列を置換する 一部の文字またはパターンを別の値に置き換える str_replace
SUBSTITUTE 文字列を置換する(全て) 一部の文字またはパターンを別の値に置き換える str_replace_all
REPLACE 文字列を指定した位置から変換する str_replace(列名,str_sub(列名,開始位置,文字数),“置き換え文字”)
<なし> ある文字列を取り出す str_extract
<なし> ある文字列が含まれているか判定する テキストからいくつかの文字またはパターンを見つける str_detect
<なし> ある文字列を取り除く 文字列の中にあるいらない文字を取り除く str_remove
<なし> ある文字列を取り除く(全て) 文字列の中にあるいらない文字を取り除く str_remove_all
TRIM 空白を削除する str_trim
<なし> 文字列をクリーンアップする エスケープ文字と余分なスペースを削除する str_clean
TEXT 数値を表示形式を設定してキャラクター型にする as.character
TEXTJOIN 文字列を結合する 数値データに文字列を追加する方法 str_c
VALUE 文字列を数値に変換する テキストから数値のみを抽出する parse_number, as.numeric

日付/時間

Excel関数名 概要 ブログ ドキュメント
DATEVALUE 日付に変換 文字列を日付/時間データに変換する ymd, mdy,dmy, etc.
DATE 複数の列をまとめて一つの日付型の列に変換する 年・月・日の列をまとめて1つの日付型の列にする方法 ymd(str_c(y,m,d))
TIMEVALUE 時間形式の文字列を時間に変換する hms,hm,ms, etc.
TIME 複数の列をまとめて一つの時間型の列に変換する hms(str_c(h,m,s))
<なし> 日付/時間型に変換 時間と分をくっつけて、時間データにする ymd_hms,mdy_hms,ymd_hm, etc.
DATEDIF 日付の期間を指定した単位で取得する 顧客の開始日と終了日から継続期間を求める方法 as.numeric(<日付> - <日付>, unit = “days”)
DAYS 2つの日付の期間を日数で取得する 顧客の開始日と終了日から継続期間を求める方法 <日付> - <日付>
YEAR 年を抽出 year
MONTH 月を抽出 month
DAY 日を抽出 day
HOUR 時を抽出 hour
MINUTE 分を抽出 minute
SECOND 秒を抽出 second
WEEKDAY 曜日を抽出 wday
<なし> 日付をもとに平日か週末を返す weekend
WORKDAY.INTL 営業日数を計算 営業日(稼働日)ベースの日数を数える
NETWORKDAYS.INTL 日付の期間を休日をのぞいて取得する
<なし> 月の最初の日を返す 日付から月初・月末の情報を抽出する方法 floor_date
EOMONTH 月の最終日を返す 日付から月初・月末の情報を抽出する方法 ceiling_date
<なし> 日付を丸め処理する round_date
EDATE 前の月の最終日を返す rollback
TODAY 今日の日付を抽出する today
NOW 時間 now

条件

Excel関数名 概要 ブログ ドキュメント
AND 全ての条件が満たしているか判定する &
OR 一つでも条件を満たしているか判定する |
NOT 条件の結果を反転させる !
XOR 2つの条件の結果が異なるか判定する xor
IF 条件により処理を分ける 「ifelse」関数を使って条件によって異なる結果を返す if_else
IFS 複数の条件ごとに処理を分岐する case_when - 条件によって異なる値を返すための方法 case_when

結合

Excel関数名 概要 ブログ ドキュメント
VLOOKUP 結合元データフレームの全ての行を保持して列結合する 他のデータフレームの列を結合する方法 left_join
<なし> 結合先データフレームの全ての行を保持して列結合する 他のデータフレームの列を結合する方法 right_join
<なし> 両方のデータフレームの全ての行を保持して列結合する 他のデータフレームの列を結合する方法 full_join
<なし> 両方に適合する行のみ保持して列結合する 他のデータフレームの列を結合する方法 inner_join
<なし> 結合先に存在する行のみを保持する 他のデータフレームの列を使ってフィルタする方法:Filter Join semi_join
<なし> 結合先に存在しない行のみを保持する 他のデータフレームの列を使ってフィルタする方法:Filter Join anti_join
<なし> 全ての行を結合する 異なるデータフレームにある行を追加する bind_rows
HLOOKUP 一意の行だけを結合する union
<なし> 共通する行だけを抽出する intersect
<なし> 共通しない行だけを抽出する setdiff

欠損値

Excel関数名 概要 ブログ ドキュメント
ISNA セルの値がNAの場合にTRUEを返す 値がNAかどうか調べる is.na
ISBLANK セルの値が空白かNAの場合にTRUEを返す is_empty
<なし> …を欠損値に置き換える na_if
<なし> 欠損値を特定の値に置き換える 欠損値を指定した値で埋める方法 impute_na
<なし> 欠損値を別の列の値で埋める 欠損値を指定した値で埋める方法 coalesce
<なし> 欠損値を前後の行で埋める 欠損値を指定した値で埋める方法 fill

その他

Excel関数名 概要 ブログ ドキュメント
ISLOGICAL ロジカル型か判定する is.logical
ISTEXT 文字列か判定する is.character
ISNONTEXT 文字列以外か判定する !is.character
ISNUMBER 数値か判定する is.numeric