我有一个包含大约10个csv文件的目录,所有大型数据集都有50M +行。我想创建一个for循环
我怎么能这样做?
这是我期望得到的df看起来的方式,包括特征和概率分位数的列。
features 25% 50% 75%
Age 24 28 35
Height 161 175 194
探索pandas read_csv和pandas quantile的功能。
例如,您可能具有以下内容:
quantiles = [.25, .50, .75]
results = OrderedDict([(x,[]) for x in quantiles])
columns = ["age", "height"]
for csv_file in os.listdir(file_path):
df = pd.read_csv(os.path.join(file_path, csv_file))
for column in columns:
for value in quantiles:
results[value].append(df[column].quantile(value))
result_df = pd.DataFrame(data=results, index=columns)
在读取文件时,您可能需要使用chunksize参数来处理内存管理。