np.loadtxtしにくいデータの対応方法:

・文字コードがutf-8じゃない!
→ nkfで文字コードをutf-8に変換するターミナルコマンドを、pythonから実行する。ちなみに、nkfの「-w」でutf-8にできるが、ASCIIはこれじゃ変換されないので、「-w8」オプションが必要です。

import os
import glob as gl
filename = gl.glob("*.csv")

# brew install nkf(ターミナルで、必須)
for i in range(len(filename)):
    os.system("nkf -w8 --overwrite "+ filename[i])

・strとfloatが混在している!
→ str型でロードして、その後、必要な部分だけfloatに変換する。以下は、strでロードするコード

dat = np.loadtxt(filename, delimiter=",", skiprows=0, dtype="str")