U0. コンピュータ基礎
ユニット概要
| 項目 | 内容 |
|---|---|
| 分類 | 根(前提知識) |
| 前提 | なし |
| 次のユニット | U1(Rの基礎) |
| 学習目標 | コンピュータの基本構造を理解する / ファイルとパスの概念を理解する / 文字コードの問題を知る / コマンドライン操作の基礎を身につける |
事前知識
コンピュータの5つの装置
コンピュータは大きく分けて5つの装置で構成されています。
| 装置 | 役割 | 具体例 |
|---|---|---|
| 入力装置 | 情報をコンピュータに伝える | キーボード、マウス、マイク |
| 出力装置 | 結果を人間に伝える | ディスプレイ、スピーカー、プリンタ |
| 演算装置 | 計算を行う | CPU(の一部) |
| 制御装置 | 各装置を制御する | CPU(の一部) |
| 記憶装置 | データを保存する | メモリ(RAM)、SSD/HDD |
CPU(Central Processing Unit)は演算装置と制御装置を兼ねた、コンピュータの「頭脳」です。
記憶装置: メモリとストレージ
記憶装置には2種類あり、役割が異なります。
| 種類 | 特徴 | 速度 | 電源OFF |
|---|---|---|---|
| 一次記憶(RAM) | 作業中のデータを一時保管 | 高速 | 消える |
| 二次記憶(SSD/HDD) | ファイルを永続的に保存 | 低速 | 残る |
RAMは「作業机」、SSD/HDDは「引き出し」に例えられます。作業中のファイルはRAMに読み込まれ、保存するとSSD/HDDに書き戻されます。保存しないまま電源が切れるとデータは消えます。
情報の単位: ビットとバイト
コンピュータは全ての情報を 0と1の組み合わせ(2進数) で扱います。
| 単位 | 大きさ | 目安 |
|---|---|---|
| 1 bit | 0か1の1桁 | — |
| 1 Byte(B) | 8 bit | 半角英数字1文字 |
| 1 KB | 1,024 B | 短いテキストファイル |
| 1 MB | 1,024 KB | 写真1枚程度 |
| 1 GB | 1,024 MB | 動画数十分程度 |
| 1 TB | 1,024 GB | SSD1台分程度 |
ファイルと拡張子
ファイルには 拡張子(extension) がついており、ファイルの種類を示します。
| 拡張子 | 種類 | 特徴 |
|---|---|---|
.txt |
テキスト | メモ帳で開ける。最もシンプル |
.csv |
テキスト | カンマ区切りのデータファイル。Rでよく使う |
.R |
テキスト | Rスクリプトファイル |
.docx |
バイナリ | Word文書。メモ帳では読めない |
.xlsx |
バイナリ | Excelファイル |
.pdf |
バイナリ | 閲覧用文書 |
.png, .jpg |
バイナリ | 画像ファイル |
重要: .csv や .R はテキストファイルなので、どんなテキストエディタでも開けます。一方、.docx や .xlsx はバイナリファイルで、専用のソフトが必要です。
WindowsやmacOSでは拡張子が非表示になっていることがあります。拡張子は必ず表示する設定にしてください。 拡張子が見えないと、ファイルの種類を間違えてエラーの原因になります。
ファイルパス: 絶対パスと相対パス
コンピュータ上でファイルの位置を指定する方法を パス(path) と呼びます。
絶対パス
ルート(最上位)からの完全な位置指定です。
# Mac / Linux
/Users/kosugitti/Documents/data/mydata.csv
# Windows
C:\Users\kosugitti\Documents\data\mydata.csv
相対パス
現在の作業フォルダからの相対的な位置指定です。
# 現在のフォルダにあるファイル
mydata.csv
# 1つ下の data フォルダ内
data/mydata.csv
# 1つ上のフォルダ
../mydata.csv
# 1つ上の sibling フォルダ内
../other_folder/mydata.csv
.. は「1つ上の階層」を意味します。
パスの区切り文字: Mac/Linuxではスラッシュ /、Windowsではバックスラッシュ \ を使いますが、Rでは OSに関係なく / が使えます。
ファイルが見つからないエラーの3大原因
Rでファイルを読み込むときに最も多いエラーが「ファイルが見つからない」です。原因は3つに絞られます:
- ファイル名の間違い: スペルミス、大文字/小文字の違い、拡張子の違い
- パスの間違い: ファイルの場所を正しく指定していない
- 作業フォルダの違い:
getwd()で確認。RStudioプロジェクトを使えば安定する
文字コード
文字をコンピュータで扱うには、「どの数値がどの文字に対応するか」を決めたルール(文字コード)が必要です。
| 文字コード | 特徴 |
|---|---|
| ASCII | 英数字と記号(128文字)。1文字 = 1バイト |
| UTF-8 | 世界中の言語に対応。国際標準。R ではこれを使う |
| Shift-JIS | 日本語Windows で伝統的に使われる。国際標準ではない |
問題が起きるパターン: WindowsでExcelを使ってCSVを保存すると Shift-JIS になることがある。これをMacやRで開くと 文字化け する。CSVファイルは必ず UTF-8 で保存しましょう。
ファイル名の原則: ファイル名やフォルダ名には 半角英数字とアンダースコア(_)だけ を使いましょう。日本語やスペースを含めると、OS間の移動や共有時にトラブルの原因になります。
キーボードの記号
プログラミングでは、日常ではあまり使わない記号を頻繁に使います。
| 記号 | 名前 | 用途の例 |
|---|---|---|
# |
ハッシュ / シャープ | Rのコメント |
$ |
ドルマーク | Rでリストやデータフレームの要素アクセス |
% |
パーセント | Rのパイプ %>% |
& |
アンパサンド | AND条件 |
\| |
パイプ / 縦棒 | OR条件 |
~ |
チルダ | Rの式(formula) |
` |
バッククォート | 変数名の囲み |
_ |
アンダースコア | 変数名の区切り |
{ } |
中括弧 / ブレイス | コードブロック |
[ ] |
角括弧 / ブラケット | インデキシング |
( ) |
丸括弧 / パレンシス | 関数呼び出し |
注意: ハイフン - とアンダースコア _ の見分け、小文字エル l と数字の 1、大文字オー O と数字の 0 は混同しやすいので気をつけましょう。
コマンドライン(ターミナル)の基礎
GUIのアイコンをクリックする代わりに、テキストでコンピュータに指示を出す方法が コマンドライン です。
ターミナルの開き方:
- Mac: 「アプリケーション → ユーティリティ → ターミナル」または Spotlight で “terminal” と検索
- Windows: スタートメニューから「PowerShell」または「コマンドプロンプト」を検索
- Ubuntu (Linux):
Ctrl + Alt + T
以下に、基本的なコマンドをOS別に示します。Mac と Linux(Ubuntu)はほぼ同じコマンド で操作できます。
現在のフォルダを確認する
| OS | コマンド | 出力例 |
|---|---|---|
| Mac / Linux | pwd |
/Users/kosugitti/Documents |
| Windows (PowerShell) | pwd または Get-Location |
C:\Users\kosugitti\Documents |
| Windows (cmd) | cd(引数なし) |
C:\Users\kosugitti\Documents |
フォルダ内のファイル一覧
| OS | コマンド | オプション例 |
|---|---|---|
| Mac / Linux | ls |
ls -la(詳細表示 + 隠しファイル) |
| Windows (PowerShell) | ls または Get-ChildItem |
ls -Force(隠しファイルも) |
| Windows (cmd) | dir |
dir /a(全ファイル表示) |
フォルダの移動
全OS共通で cd を使います。
# 1つ下のフォルダに移動
cd data
# 1つ上のフォルダに戻る
cd ..
# ホームフォルダに戻る
cd ~ # Mac / Linux
cd %USERPROFILE% # Windows (cmd)
cd ~ # Windows (PowerShell)フォルダの作成と削除
| 操作 | Mac / Linux | Windows (PowerShell) | Windows (cmd) |
|---|---|---|---|
| フォルダ作成 | mkdir mydir |
mkdir mydir |
mkdir mydir |
| フォルダ削除(空) | rmdir mydir |
rmdir mydir |
rmdir mydir |
ファイルのコピー・移動・削除
| 操作 | Mac / Linux | Windows (PowerShell) | Windows (cmd) |
|---|---|---|---|
| コピー | cp file1.txt file2.txt |
cp file1.txt file2.txt |
copy file1.txt file2.txt |
| 移動(名前変更にも) | mv old.txt new.txt |
mv old.txt new.txt |
move old.txt new.txt |
| 削除 | rm file.txt |
rm file.txt |
del file.txt |
注意: rm(削除)はゴミ箱を経由しません。一度削除すると元に戻せません。
ファイルの内容を表示
| OS | コマンド | 用途 |
|---|---|---|
| Mac / Linux | cat file.txt |
ファイル全体を表示 |
| Mac / Linux | head -5 file.txt |
先頭5行を表示 |
| Mac / Linux | tail -5 file.txt |
末尾5行を表示 |
| Windows (PowerShell) | cat file.txt または Get-Content file.txt |
ファイル全体を表示 |
| Windows (cmd) | type file.txt |
ファイル全体を表示 |
ファイルの検索
| OS | コマンド | 例 |
|---|---|---|
| Mac / Linux | find . -name "*.csv" |
カレント以下のCSVファイルを検索 |
| Windows (PowerShell) | Get-ChildItem -Recurse -Filter "*.csv" |
同上 |
| Windows (cmd) | dir /s *.csv |
同上 |
クラウドストレージとバックアップ
- Dropbox, OneDrive, Google Drive, iCloud などのクラウドストレージは、ファイルを自動的にサーバーと同期します
- バックアップとして便利ですが、個人情報を含むデータは注意 が必要です
- Windows の注意: OneDrive が有効だと、デスクトップが2つ存在する場合があります(ローカルとOneDrive上)。ファイルが見つからないときはこれを疑ってください
バージョン管理の考え方
レポートを書くとき、こんなファイル名をつけたことはありませんか?
report.docx
report_v2.docx
report_v2_修正.docx
report_v2_修正_最終版.docx
report_v2_修正_最終版_本当の最終.docx
これは効率が悪く、どれが最新かわからなくなります。日付を入れる方法(例: report_20260309.docx)は改善策ですが、限界があります。
プログラムのコードには Git というバージョン管理システムを使います(U22で詳しく学びます)。Gitはファイルの変更履歴を全て記録し、任意の時点に戻ることができます。
研究データはバージョン管理しない: データは変更してはいけないもの(研究倫理の観点)。バージョン管理するのは分析スクリプトだけです。
ランクC: 基礎知識
0-C-1
コンピュータの5つの装置のうち、CPUに含まれるのはどれか。
0-C-2
RAM(メモリ)はパソコンの電源を切ると中身が消える。
0-C-3
1 GB は何 MB か。
0-C-4
.csv ファイルはバイナリファイルである。
0-C-5
ファイルパスにおいて .. は何を意味するか。
0-C-6
Rでは、Mac/Linux/Windowsに関係なくパスの区切りにスラッシュ / が使える。
0-C-7
現在の国際標準の文字コードはどれか。
0-C-8
WindowsのExcelでCSVファイルを保存すると、Shift-JISになることがあり文字化けの原因となる。
0-C-9
Mac / Linux のターミナルで現在のフォルダを確認するコマンドはどれか。
0-C-10
rm コマンドで削除したファイルはゴミ箱に移動する。
0-C-11
ファイル名に日本語やスペースを含めても、OS間の移動で問題は起こらない。
0-C-12
研究データをGitでバージョン管理すべきでない理由はどれか。
ランクB: 実践スキル
0-B-1
あなたのパソコンでターミナル(Mac/Linux)またはPowerShell/コマンドプロンプト(Windows)を開き、以下の操作を順番に行いなさい。
pwd(Mac/Linux)またはcd(Windows cmd)で現在のフォルダを確認するls(Mac/Linux/PowerShell)またはdir(Windows cmd)でファイル一覧を表示する- デスクトップに移動する(
cd ~/Desktopまたはcd %USERPROFILE%\Desktop) - 再度
pwd/cdで移動先を確認する
# Mac / Linux の場合
pwd
ls
cd ~/Desktop
pwd
# Windows PowerShell の場合
pwd
ls
cd ~/Desktop
pwd
# Windows コマンドプロンプトの場合
cd
dir
cd %USERPROFILE%\Desktop
cd0-B-2
コマンドラインで以下の操作を行いなさい。
- デスクトップに
r_practiceというフォルダを作成する - そのフォルダの中に移動する
- フォルダ内のファイル一覧を表示する(何もないはず)
- 1つ上の階層(デスクトップ)に戻る
- 作成したフォルダを削除する
# Mac / Linux の場合
cd ~/Desktop
mkdir r_practice
cd r_practice
ls
cd ..
rmdir r_practice
# Windows PowerShell の場合
cd ~/Desktop
mkdir r_practice
cd r_practice
ls
cd ..
rmdir r_practice0-B-3
Rを起動して、以下のコードを実行しなさい。表示されたパスが何を意味するか、自分のパソコンのフォルダ構造と対応づけて理解すること。
# 現在の作業フォルダを確認
getwd()
# 作業フォルダ内のファイル一覧
list.files()
# CSVファイルだけを表示
list.files(pattern = "\\.csv$")getwd(): Rが「今いる場所」を返します。ファイルの読み書きはこのフォルダを基準に行われますlist.files():lsコマンドのR版ですpattern = "\\.csv$": 正規表現で「.csvで終わるファイル」を指定しています
RStudioでプロジェクト(.Rproj)を使っていれば、作業フォルダはプロジェクトのフォルダに自動設定されます。
0-B-4
以下の状況で、ファイルの相対パスを書きなさい。
フォルダ構造:
project/
├── scripts/
│ └── analysis.R ← 今ここで作業中
├── data/
│ └── survey.csv
└── output/
└── results.csv
analysis.R から survey.csv を読み込むための相対パスは?
# analysis.R から見た survey.csv の相対パス
data <- read.csv("../data/survey.csv")scripts/ から1つ上(../)に行き、そこから data/ に入って survey.csv を指定します。
同様に results.csv に書き出す場合は:
write.csv(results, "../output/results.csv")0-B-5
テキストエディタ(メモ帳、VSCode、RStudio等)で以下の内容のCSVファイルを UTF-8 で作成し、test_data.csv という名前でデスクトップに保存しなさい。その後、Rで読み込んで中身を確認しなさい。
name,score,grade
田中,85,A
鈴木,72,B
佐藤,91,A
# UTF-8 で保存したファイルを読み込む
df <- read.csv("~/Desktop/test_data.csv", fileEncoding = "UTF-8")
df
# もし文字化けしたら Shift-JIS の可能性がある
# df <- read.csv("~/Desktop/test_data.csv", fileEncoding = "Shift-JIS")RStudioで新しいファイルを作成する場合、デフォルトでUTF-8になります。Windowsのメモ帳で保存する場合は、「名前を付けて保存」で文字コードを「UTF-8」に指定してください。
0-B-6
コマンドラインで、CSVファイルの中身を確認する操作を練習しなさい。先ほど作成した test_data.csv を使って以下を試すこと。
# Mac / Linux の場合
cat ~/Desktop/test_data.csv # 全体を表示
head -2 ~/Desktop/test_data.csv # 先頭2行を表示
wc -l ~/Desktop/test_data.csv # 行数を数える
# Windows PowerShell の場合
cat ~/Desktop/test_data.csv
Get-Content ~/Desktop/test_data.csv | Select-Object -First 2 # 先頭2行
(Get-Content ~/Desktop/test_data.csv).Count # 行数
# Windows コマンドプロンプトの場合
type %USERPROFILE%\Desktop\test_data.csvデータ分析では、CSVファイルをRに読み込む前にターミナルで中身を確認する習慣をつけると、文字化けや形式の問題を早期に発見できます。
ランクA: AI協働
0-A-1
以下のRスクリプトがエラーを出しています。エラーの原因を推理し、生成AIに相談して解決策を見つけてください。
# エラーが出るスクリプト(原因は複数あるかもしれない)
setwd("C:\Users\tanaka\研究データ\2026年度")
data <- read.csv("アンケート結果 (1).csv")生成AIに相談する際は、以下を伝えてください:
- エラーメッセージの内容
- 自分のOSとRのバージョン
- ファイルが実際にどこにあるか
AIの回答を踏まえて、このスクリプトにはいくつの問題があるか を整理してください(最低3つはあります)。
0-A-2
あなたの卒業研究用のプロジェクトフォルダ構造を設計してください。
生成AIに「Rで卒業研究を進めるための理想的なフォルダ構成を教えて」と聞き、提案をもらいましょう。そのうえで、以下を実際にコマンドラインで作成してください:
- プロジェクトのルートフォルダ
- データ用、スクリプト用、出力用のサブフォルダ
.Rprojファイル(RStudioで「New Project」から作成可能)README.txt(プロジェクトの説明を書く)
作成したフォルダ構造を ls -R(Mac/Linux)または Get-ChildItem -Recurse(PowerShell)で確認し、結果をゼミで共有してください。
まとめ
このユニットで学んだこと:
- コンピュータの基本構造: CPU(演算+制御)、メモリ(一時記憶)、ストレージ(永続記憶)
- ファイルと拡張子: テキストファイル(
.csv,.R)とバイナリファイル(.docx,.xlsx)の違い - パス: 絶対パスと相対パス。
..は「1つ上」。Rでは/を使う - 文字コード: UTF-8を使う。Shift-JISは文字化けの原因
- ファイル名: 半角英数字とアンダースコアだけ。日本語・スペースは避ける
- コマンドライン:
pwd,ls,cd,mkdir,cp,mv,rmなどの基本操作 - バージョン管理: ファイル名連番は非効率。Gitを使う(U22で詳しく学ぶ)
次のU1(Rの基礎)では、RとRStudioのインストールと基本操作を学びます。