More Related Content
Similar to 東大生向けデータ解析講座 第1回 2017/12/27 (20)
東大生向けデータ解析講座 第1回 2017/12/27
- 6. Python 2とPython 3について
● 書籍やネットで調べ物をしているとPython2の情報が多いが、Python2は
2020年までのサポートとなっているので、これから解析を始める人は
Python3をおすすめ。
● Python2のサポートは2020年まで
● Python2の書籍などをPython3で再現するときに、初心者がはまりそうな
部分
○ print文
○ 整数値の割り算:
○ Unicodeの扱い
○ map, filter関数の返り値
- 7. print文
Python3ではprintが関数となっており、括弧が必須となっている
Python2 Python3
>>> print 1
File "<stdin>", line 1
print 1
^
SyntaxError: Missing parentheses in call to
'print'
>>> print 1, 2
File "<stdin>", line 1
print 1, 2
^
SyntaxError: Missing parentheses in call to
'print'
>>> print(1)
1
>>> print(1, 2)
1 2
>>> print 1
1
>>> print 1, 2
1 2
>>> print(1)
1
>>> print(1, 2)
(1, 2)
- 10. map, filter関数の返り値
Python2では商が返ってきていたが、Python3では小数が返ってくる
Python2 Python3
>>> map(lambda x: x*2, [1,2,3])
[2, 4, 6]
>>> filter(lambda x: x%2 == 0, [1,2,3])
[2]
>>> map(lambda x: x*2, [1,2,3])
<map object at 0x7f57df3ae470>
>>> list(map(lambda x: x*2, [1,2,3]))
[2, 4, 6]
>>> filter(lambda x: x%2 == 0, [1,2,3])
<filter object at 0x7f57df3ae470>
>>> list(filter(lambda x: x%2 == 0, [1,2,3]))
[2]
ここでは説明を省略するが、lambdaは無名関数と呼
ばれるもの。lambdaに関しては演習のときに説明
- 12. 習うより慣れる: Jupyter Notebookを使ってみる
● consoleでjupyter notebookを起動する人
jupyter notebookとコマンドをうつ
● Anacondaを使っている人
Anaconda Navigatorを起動したのち, Jupyter Notebookをメニューから選
んで起動
- 13. Jupyter Notebookの使い方
● ノートブックを作成したいフォルダ階層で、「New」ボタン ⇒
「Python3」を選択し、ノートブックを作成
● Command Mode(Esc)とEdit Mode(Enter or セル内をクリック)がある
● Edit Modeでセルと呼ばれるスペースに Python のコードを入力し実行
○ Ctrl + Enter: セル内のプログラムを実行
○ Shift + Enter: プログラムを実行して下にセルを追加
● Command Modeでhを入力すると、各種ショートカットが表示
● 上部のKernelから「Interrupt」「Restart」「Restart & Run All」等も利用
できる
- 14. Python 基本
● 最低限知っておくべきデータ型
○ int: 整数 (1 ,2, 3など)
○ float: 小数点 (1.0, 2.1, 3.3333など)
○ str: 文字列 (‘a’, ‘b’, “本郷”, など)
○ その他複素数などを定義する型なども存在
● リスト・タプル・辞書
○ リスト: 配列と呼ばれるもの。複数のデータをまとめる ([1,2,3], [10, 20]など)
○ タプル: リストと似ていてるが、中身の変更ができない ((1,2,3), (10, 20)など)
○ 辞書: キーと値のペアからなる ({ ‘a’: 1, ‘b’, 10}, { 1: 10, ‘x’: 100}など)
● 四則演算: いわゆる計算を行うもの (+ - * / など)
● 比較演算子: 条件を満たすかどうかをTrue, Falseで返す (==, !=, <, >, <=,
>=)
● ブール演算子 (and, or, not)
- 15. Python 基本
● 変数の定義 (a = 1, x = ‘aaa’)
● インデント: ブロックを定義 (Cなどにおける{}に対応するもの)
● if文: 条件を定義
● for文: 繰り返しの計算
● 関数: 特定の演算を定義 (def, lambda)