importについてあまりにも適当に済ませてきたので、
改めて、、
ことの発端は、datetime()という関数を使いたい!という所から始まりました。
(今思うとこの関数が曲者だった・・・)
import datetime
しかーし!!
なんでや!!!!
と思い調べてみました。
from datetime import datetime
myDate = datetime(2017,1,1)
これならいけます!!
色んなパターンがあるみたいですが、以下を覚えておけば良さそう
①import pandas as pd パターン
これはPandasモジュールを読み込み、pdという名前で使えるようにする。
Pandasモジュールの中にたくさんの関数があるのですが、(DataFrameとかね)
pd.DataFrame() という形で頭にpdを付ければ使えるようになる。
②from sklearn.linear_model import LogisticRegressionパターン
これは、ピンポイントで、sklearn.linear_modelというモジュールの中の、
LogisticRegressionという関数を使えるようにする。
(ほんとはサブモジュールという概念があるらしいけど割愛)
なので、単に、LogisticRegression(iroiro)という形で使える
scikit-learnのように、そんなに色んな種類の関数をあれこれ使わない場合には、
こっちの方が適しているということでしょう。(逆もまた然り。pd.hoge)
ーーー
以下の記事がめちゃくちゃ詳しかった。
詳しすぎて何が知りたいのか見失いかけるの注意!
https://qiita.com/suzuki-hoge/items/f951d56290617df4279e
ちなみに、黒魔術
from pandas import *
というのもあるらしい。
これをすれば、pandasモジュールの中の関数を、接頭語なしで使えるようになります!
便利!
でも、関数名が衝突して良からぬことが起きるので、やめた方が良いらしいです。そう思います。
P.S.
今回ハマるきっかけになった、datetime()は結構ややこしくて、datetimeモジュールの中にdatetimeという関数があるパターンでした。
import datetime
myDate = datetime.datetime(2016,1,1)
import datetime as dt
myDate = dt.datetime(2016,1,1)
これでもオッケー!