Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Pandas 根据唯一值将数据帧切片为许多较小的数据帧_Pandas_Numpy_Dataframe - Fatal编程技术网

Pandas 根据唯一值将数据帧切片为许多较小的数据帧

Pandas 根据唯一值将数据帧切片为许多较小的数据帧,pandas,numpy,dataframe,Pandas,Numpy,Dataframe,我有一个大的数据帧(14000行)。这些列包括“标题”、“x”和“y”以及其他随机数据 对于一个特定的标题,我编写了一个代码,它基本上使用该数据子集的x和y值来执行分析(但具体细节对此并不重要) 对于这个标题(类似于“零件号Y1-17”),大约有80行 目前,我只知道如何让我的代码一次处理一个标题子集(即一组标题相同的行)。为此,我一直在用我的大数据帧制作一个更小的数据帧,使用: df = pd.read_excel(r"mydata.xlsx") a = df.loc[df

我有一个大的数据帧(14000行)。这些列包括“标题”、“x”和“y”以及其他随机数据

对于一个特定的标题,我编写了一个代码,它基本上使用该数据子集的x和y值来执行分析(但具体细节对此并不重要)

对于这个标题(类似于“零件号Y1-17”),大约有80行

目前,我只知道如何让我的代码一次处理一个标题子集(即一组标题相同的行)。为此,我一直在用我的大数据帧制作一个更小的数据帧,使用:

df = pd.read_excel(r"mydata.xlsx")
a = df.loc[df['title'].str.contains('Y1-17')]
但是,考虑到我需要对其中大约180个较小的数据集进行分析,我不想手动进行分析

我的问题是,有没有一种方法可以通过按唯一的“title”值对数据进行切片来自动生成所有较小的数据帧?在我找到的所有帮助中,似乎需要指定“title”来生成子集。我想把它全部子集,我不想列出所有的标题名

我已经搜索了很多次,没有发现任何东西,但是我是一个初学者,所以很可能我错过了一些基本的方法

我不确定这是否是重要的信息,但我正在与pandas和numpy合作的模块

谢谢你的帮助

您可以使用

例如:

df_dict = {key: title for key, title in df.copy().groupby('title', sort=False)}
它创建一个数据帧字典,每个数据帧包含所有列,并且仅包含与每个唯一标题值相关的行