因此,我有以下数据帧,但有大量的行(100、1000等):
问题:
现在我想打印单独的数据帧,其中包含访问同一年龄段的所有人,因此输出应如下所示:
DF1:
DF2:
我已经尝试了以下功能:
Try1:
def groupAge(data):
x = -1
for x in range(len(data)):
#q = len(data[data["Age"] == data.loc[x, "Age"]])
b = data[data["Age"] == data.loc[x,"Age"]]
x = x + 1
print(b,x)
return b
Try2:
def groupAge(data):
x = 0
for x in range(len(data)):
q = len(data[data["Age"] == data.loc[x, "Age"]])
x = x + 1
for k in range(0,q,q):
b = data[data["Age"] == data.loc[k,"Age"]]
print(b)
return b
他们都没有产生正确的产出。Try1打印几个组,所有组打印两次,但不遍历整个数据帧,Try2只打印第一个年龄组,也打印两次
首先,我不能确定为什么它总是打印两次输出,也不能确定为什么它不能在整个数据帧中工作
有人能帮忙吗
在您的第一次尝试中,您将循环数据帧的长度,然后每次分别用0、1、2、3和4替换x时重复下面的行。在旁注中,
x = x + 1
不是必需的range
已经处理好了它显然会每次打印两次,因为您正在扫描整个数据帧
data
并执行重复的命令。例如:上述两条语句都打印
20
,因此通过在循环中替换20
,实际上您将执行以下命令两次我想你只需要这个
相关问题 更多 >
编程相关推荐