今までまとめたPythonのコード【一般編】
概要
現在の会社が自作のスプレッドシートと、会社のPCの同期を許可しないので、ここで今まで使ったコードを記載して、会社でも使えるようにする
コード
●CSVを読み込む
financial_data = pd.read_csv(file_path,encoding="cp932")
●CSVに書き込む
financial_data02.to_csv(file_name01,encoding="cp932")
●下の階層のCSVを読み込む
file_name01=".\CSV\アメリカ 10年 債券利回りの過去データ (2).csv"
inancial_data = pd.read_csv(file_path)
●下の階層のCSVを読み込む
file_name01=".\CSV\アメリカ 10年 債券利回りの過去データ (2).csv"
inancial_data = pd.read_csv(file_path)
●CSVファイルを空にする
savefile = "スライド用画像抽出.csv"
with open(savefile, mode="r+") as f: # rwでファイルを開くこと
f.truncate(0) #現在のファイルサイズが0に
●Excelを読み込む
Roulette_data02 = pd.read_excel(file_name01,sheet_name=0)
●Excelに書き込む
# 計算した出来高を書きこみ
rows = dataframe_to_rows(Roulette_data01, index=False, header=True) # openpyxlのユーティリティを使用
wb = openpyxl.load_workbook(file_name01)
ws = wb.worksheets[0]
# ワークシートへデータを書き込む
row_start_idx = 1
col_start_idx = 1
for row_no, row in enumerate(rows, row_start_idx):
for col_no, value in enumerate(row, col_start_idx):
ws.cell(row=row_no, column=col_no, value=value) # 1セルづつ書込む
#ファイルの保存
wb.save(file_name01)
●Excelを空にする
import openpyxl
wb = openpyxl.load_workbook('C:/Users/xxx/Desktop/test/test.xlsx')
ws = wb['Sheet1']
# ファイルを初期化
for row in ws:
for cell in row:
cell.value = None
#別名で保存
wb.save(file_name01)
●Excelを空にする
import openpyxl
wb = openpyxl.load_workbook('C:/Users/xxx/Desktop/test/test.xlsx')
ws = wb['Sheet1']
# ファイルを初期化
for row in ws:
for cell in row:
cell.value = None
#別名で保存
wb.save(file_name01)
CSVを読み込む
financial_data = pd.read_csv(file_path,encoding="cp932")
エクセルを読み込む
Roulette_data02 = pd.read_excel(file_name01,sheet_name=0)
下の階層のCSVを読み込む
file_name01=".\CSV\アメリカ 10年 債券利回りの過去データ (2).csv"
inancial_data = pd.read_csv(file_path)
CSVに書き込む
financial_data02.to_csv(file_name01,encoding="cp932")
CSVファイルを空にする
savefile = "スライド用画像抽出.csv"
with open(savefile, mode="r+") as f: # rwでファイルを開くこと
f.truncate(0) #現在のファイルサイズが0に
Excelに書き込む
# 計算した出来高を書きこみ
rows = dataframe_to_rows(Roulette_data01, index=False, header=True) # openpyxlのユーティリティを使用
wb = openpyxl.load_workbook(file_name01)
ws = wb.worksheets[0]
# ワークシートへデータを書き込む
row_start_idx = 1
col_start_idx = 1
for row_no, row in enumerate(rows, row_start_idx):
for col_no, value in enumerate(row, col_start_idx):
ws.cell(row=row_no, column=col_no, value=value) # 1セルづつ書込む
#ファイルの保存
wb.save(file_name01)
Excelを空にする
import openpyxl
wb = openpyxl.load_workbook('C:/Users/xxx/Desktop/test/test.xlsx')
ws = wb['Sheet1']
# ファイルを初期化
for row in ws:
for cell in row:
cell.value = None
#別名で保存
wb.save(file_name01)
期間内の最安値の探し方
span01=-5
financial_data02['Close'].rolling(window=span01*-1).min().shift(span01)
pandasのrolling()に条件を付け加えて要素を抽出し、元のDataFrameに結合したい
nan
複数の値を入力
num_s, num_g = input().split()
split関数の内包表記
※最初からintが型にする
num_s, num_g = [int(x) for x in input().split()]
for文で始まりの変数を指定しない
for _ in range(4)
リストで、指定した位置の要素を削除し、
その要素の値を取得できる。
l = list(range(10))
print(l.pop(0))
# ファイル名の変更
import os
os.rename(path1, path2)
ファイルをコピーする
import shutil
shutil.copy(file_name30,file_name30+".xlsx")
今の時間を出す表記
t_delta = datetime.timedelta(hours=9)
JST = datetime.timezone(t_delta, 'JST')
now = datetime.datetime.now(JST)
d = now.strftime('%Y_%m_%d_%H_%M')
nan
nan
左付けで0をいれる方法
print(str_num2.rjust(4,"0"))
m=str(55).rjust(2,"0")
if, elif elseの使い方
for d in range(1,32):
if d >= 29 and m == "02":
pass
elif d >= 31 and m == "04":
pass
elif d >= 31 and m == "06":
pass
elif d >= 31 and m == "09":
pass
elif d >= 31 and m == "11":
pass
else:
d= str(d).rjust(2,"0")
リスト内のオブジェクトを
全てintにする
Code_list02 = list(map(int, Code_list01))
リストの重複を削除
Daylsit01=list(set(Daylsit01))
Python リスト内の欠損値削除
nan
PANDASの特定の行をリスト化する
ColumList01=Bace_data01.iloc[3].to_list()
nan
nan
リスト作成(がぎかっこ)
list=[]
リスト作成(なみかっこ)
user_info = {}
nan
nan
リスト内の置換
springList01=ADO_data01["完了予定日(スプリント)"].to_list()
springList01 = [item.replace('Production.Script.Solutions\TD\TEPCOSubsystemITa\ITa-', '') for item in springList01]
nan
nan
nan
nan
リストに値を追加
nan
nan
nan
2つあるリストを合体させる
IDlist01=[]
IDlist02=[]
IDlist01=Old_files_data01["TestCaseId"].values.tolist()
IDlist02=Newfiles_data01["TestCaseId"].values.tolist()
IDlist01.extend(IDlist02)
リストの数を取得
nan
リストから任意の数(ここでは5こ)を
ランダムで取得してする
import random
battle_cardlist=cardNo_list01
playerA_hand=random.sample(battle_cardlist, 5)
リストから任意の数(ここでは5こ)を
ランダムで取得してする
その後取り出した数字をリストでなく数字に変換する
nan
リストから任意の数(ここでは5こ)を
ランダムで取得して、リストから消す
battle_cardlist=cardNo_list01
playerA_hand=random.sample(battle_cardlist, 5)]
battle_cardlist.remove(playerA_hand[i])
nan
nan
nan
nan
現在の時間を表示、記載する
t_delta = datetime.timedelta(hours=9)
JST = datetime.timezone(t_delta, 'JST')
now = datetime.datetime.now(JST)
d = now.strftime('%Y_%m_%d_%H_%M')
フォルダ内のエクセルのマージ
import pandas as pd
import glob
# パスで指定したファイルの一覧をリスト形式で取得. (ここでは一階層下のtestファイル以下)
csv_files =
#読み込むファイルのリストを表示
for a in csv_files:
print(a)
#csvファイルの中身を追加していくリストを用意
data_list = []
#読み込むファイルのリストを走査
for file in csv_files:
data_list.append(pd.read_csv(file))
#リストを全て行方向に結合
#axis=0:行方向に結合, sort
df = pd.concat(data_list, axis=0, sort=True)
df.to_csv("test/total1.csv",index=False)
フォルダ内のリストのファイルサイズを測る物
New_files_PASS ="C:/Users\yusuke.sato.1/Desktop/プログラム/GENZ/OTE差分作成/最新版OTE"
Old_files_PASS ="C:/Users\yusuke.sato.1/Desktop/プログラム/GENZ/OTE差分作成/前回分OTE"
Old_files_range = sum(os.path.isfile(os.path.join(Old_files_PASS,name)) for name in os.listdir(Old_files_PASS))
New_files_range = sum(os.path.isfile(os.path.join(New_files_PASS,name)) for name in os.listdir(New_files_PASS))
New_files_list01=[]
New_filesByte_list01=[]
Old_files_list01=[]
Old_filesByte_list01=[]
New_files = os.listdir(New_files_PASS)
New_files_list01=New_files
Old_files = os.listdir(Old_files_PASS)
Old_files_list01=Old_files
for i in range(New_files_range):
Newfile_path = New_files_PASS+"/"+New_files[i]
Newfile_Byte= os.path.getsize(Newfile_path)
New_filesByte_list01.append(Newfile_Byte)
Oldfile_path = Old_files_PASS+"/"+Old_files[i]
Oldfile_Byte= os.path.getsize(Oldfile_path)
Old_filesByte_list01.append(Oldfile_Byte)
Excelのシート名を取得する
CM_path =ComparedMapping_path+".xlsx"
wb = openpyxl.load_workbook(CM_path)
# インデックス番号を指定してシート(注意:インデックス番号は0から始まる)
ws = wb.worksheets[0]
CM_data01["ソリューション"] =ws.title
対象の関数の文字数をとる
Solutionname=Solutionname[4:7]
Excelのシート数をカウントする
import pandas as pd
JOB_path = "C:/Users\yusuke.sato.1/Desktop/プログラム/GENZ/1119作業用/Integration Tests/Integration Tests_SLA(8-11).xlsx"
input_file = pd.ExcelFile(JOB_path)
sheet_names = input_file.sheet_names
len(sheet_names)
nan
nan
元ファイルを指定する対応
※常に更新がかかる、共通のファイルへのアクセル方法
ADO_file_path = "C:/Users\yusuke.sato.1/Desktop/プログラム/GENZ/元ファイル/ADO_Testcase(PassFale)一覧/"
ADO_files = os.listdir(ADO_file_path)
New_ADO_files =ADO_file_path+ADO_files[0]
T_ADO_data01 = pd.read_excel(New_ADO_files,sheet_name=0)
chromeドライバーを共通で使う方法
chromedriver_path = "C:/Users/yusuke.sato.1/Desktop/プログラム/元ファイル/chromedriver/"
chromedriver = os.listdir(chromedriver_path)
chromedriver_files =chromedriver_path+chromedriver[0]
browser = webdriver.Chrome(chromedriver_files)
nan
nan
絶対値で数字を取得
abs(10)
この記事が気に入ったらサポートをしてみませんか?