数字を表す文字列の最後の1文字を置き換えて数字として計算する
完全に作業メモ用。
タイトルも意味不明だろうw。
どういうことかというと、100万円を「1M円」と言ったり、1000円を「1K円」と言ったりするオジサンがいて、その人が飲み会の会計をExcelで管理している時は、金額が全てそのような表記になっているの。
で、そういうファイルを受け取った時、四則演算がそのまま出来ないので、「1M→1000000」という変換や「1K→1000」といった変換をやったということ。
※)Excelで変換する方法が見当たらなかったので。
少しでもpythonを使う機会を何でもいいから増やそうという試み。
#coding:utf-8 import pandas as pd import numpy as np ### Input from CSV ### inFileName = 'input/ojisan_money.csv' df = pd.read_csv(inFileName, sep=',', parse_dates=True ) ### Replace Strings ### rowIndex = 0 for str in df['金額']: if str[-1] == 'M': distStr = float(str.replace(str[-1],''))*1000000 df['Volume'][rowIndex] = distStr rowIndex += 1 ### Output to CSV ### df.to_csv("output/money.csv")
windowsへのscipyのインストール
python2.7、開発環境はpycharmを使って開発しているが、scipyのインポートに失敗する。
pycharmからpipでインポートしようとするもエラー。
pipのバージョンが古いから新しくしろと書いてあったので、試みるも、それもエラー。
何がなんだか分からんかったが、「scipy-0.9.0-win32-superpack-python2.7.exe」をインストールしたら解決。。。
根本原因を究明しなければならないけど、もういいや。。。