我有一个包含 19 列和大约 250k 行的数据集。我曾使用过更大的数据集,但这一次,Pandas 决定玩弄我的神经。
我尝试根据一些简单的规则将原始数据集拆分为 3 个子数据帧。但是,执行代码需要很长时间。过滤大约需要 15-20 秒。
任何可以提高代码性能的替代方法?
import pandas as pd
#read dataset
df = pd.read_csv('myData.csv')
#create a dataframe with col1 10 and col2 <= 15
df1 = df[(df.col1 == 10) & (df.col2 <= 15)]
df = df[~df.isin(df1)].dropna()
#create a dataframe with col3 7 and col4 >= 4
df2 = df[(df.col3 == 7) & (df.col4 >= 4)]
df = df[~df.isin(df2)].dropna()
最后,我得到了df1, df2, df
带有过滤数据的数据框。