df4loop
v0.1.0
DF4LOOP支持需要pandas.dataframe和loop組合的通用過程。具體來說,DF4LOOP的任務是“加速處理”和“使復雜的代碼直觀”以低安裝成本。
pip install df4loop定義了以下數據框架以幫助用戶設想使用DF4LOOP。
import pandas as pd
sample_dict = {
"column_1" : [ 100 , 200 , 300 , 400 , 500 ],
"column_2" : [ "A" , "B" , "C" , "D" , "E" ],
"column_3" : [ "a" , "b" , "c" , "d" , "e" ],
}
df = pd . DataFrame . from_dict ( sample_dict )
df| 列_1 | 列_2 | 列_3 | |
|---|---|---|---|
| 0 | 100 | 一個 | 一個 |
| 1 | 200 | b | b |
| 2 | 300 | c | c |
| 3 | 400 | d | d |
| 4 | 500 | e | e |
dfiterator可幫助開發人員編寫以下代碼。這是使用pandas.dataframe.iterrows編寫的代碼,目的是引用一個行。
for index , row in df . iterrows ():
tmp = row [ "column_1" ]dfiterator重現了此過程並加快了速度。實際上,DataFrame及其行Pandas。系列被轉換為列表和詞典以加快速度。但是,用法幾乎相同。
from df4loop import DFIterator
df_iterator = DFIterator ( df )
for index , row in df_iterator . iterrows ():
tmp = row [ "column_1" ]如果您不需要輸出索引,請設置return_indexes=False 。
from df4loop import DFIterator
df_iterator = DFIterator ( df )
for row in df_iterator . iterrows ( return_indexes = False ):
tmp = row [ "column_1" ]DFGENERATOR支持LOOPS設置的行數據框架的生成。將行添加到循環中的數據框中將需要很長時間才能處理。加速加速的秘訣是在列表或字典中組織行,然後立即製作pandas.dataframe。 DFGenerator支持此過程以實現直觀。
以下代碼是將DICE類型選擇為行選擇的示例。
from df4loop import DFGenerator
# It is not necessary to specify columns.
df_generator = DFGenerator ( columns = df . columns . values . tolist ())
for _ , row in df . iterrows ():
tmp_row = {
"column_1" : row [ "column_1" ],
"column_2" : row [ "column_2" ],
"column_3" : row [ "column_3" ],
}
df_generator . append ( tmp_row )
new_df = df_generator . generate_df ()以下代碼是選擇列表類型作為行的示例。必須在初始化期間指定列。
from df4loop import DFGenerator
df_generator = DFGenerator ( columns = df . columns . values . tolist ())
for _ , row in df . iterrows ():
tmp_row = [
row [ "column_1" ],
row [ "column_2" ],
row [ "column_3" ],
]
df_generator . append ( tmp_row )
new_df = df_generator . generate_df ()