Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/335.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
Python 在条件匹配的df中迭代数字_Python_Pandas - Fatal编程技术网

Python 在条件匹配的df中迭代数字

Python 在条件匹配的df中迭代数字,python,pandas,Python,Pandas,在尝试自学熊猫的同时玩弄不同的数据帧,这让我有一段时间被难倒了,这似乎是缺乏编程理解,但有人能帮我吗 考虑以下因素: ID Name Week 1 Matthew 1751 1 Matthew 1751 1 Matthew 1751 2 Jon 1751 2 Jon

在尝试自学熊猫的同时玩弄不同的数据帧,这让我有一段时间被难倒了,这似乎是缺乏编程理解,但有人能帮我吗

考虑以下因素:

ID  Name                    Week
1   Matthew                 1751
1   Matthew                 1751
1   Matthew                 1751
2   Jon                     1751
2   Jon                     1751
2   Jon                     1751
2   Jon                     1751
3   Lisa                    1751
3   Lisa                    1751
3   Lisa                    1751
3   Lisa                    1751
3   Lisa                    1751
3   Lisa                    1751
3   Lisa                    1751
我在这里尝试的是为索引中的每一次事件向周数添加+1,但仅在名称与其自身匹配的地方

ID  Name            Week
1   Matthew         1751
1   Matthew         1752
1   Matthew         1753
2   Jon             1751
2   Jon             1752
2   Jon             1753
2   Jon             1754
3   Lisa            1751
3   Lisa            1752
3   Lisa            1753
3   Lisa            1754
3   Lisa            1755
3   Lisa            1756
3   Lisa            1757
我尝试了一个简单的for循环

但它只是将索引的长度增加到数字,我也尝试过

for n in df.Name:
    print(len(n)) 
它只返回每个字符串的长度(正确),添加索引只返回索引的长度,即n出现的次数

我错过了一些基本的东西吗?我是否应该先创建一个列表,然后将其传递给df?

使用


这真的很好,谢谢。我真的很羡慕你能这么快想出答案。康普伯爵是新来的,我要去看熊猫!回答得很清楚+1@DatanoviceYw:)很乐意帮忙。@Vaishali谢谢你UU:)很抱歉忘了打绿色勾!我向阿比拜道歉。
df['Week'] = df.Week.add(df.groupby('Name').cumcount())

   ID    Name   Week
0   1   Matthew 1751
1   1   Matthew 1752
2   1   Matthew 1753
3   2   Jon     1751
4   2   Jon     1752
5   2   Jon     1753
6   2   Jon     1754
7   3   Lisa    1751
8   3   Lisa    1752
9   3   Lisa    1753
10  3   Lisa    1754
11  3   Lisa    1755
12  3   Lisa    1756
13  3   Lisa    1757