我无法找到索引中的错误。我相信这肯定是一个愚蠢的错误。我想将这些行的'td'值设置为'block'大小为1的0。我首先找到这样的行,然后使用这些索引将'td'列的值设置为0. 这里是样本数据集。这里,除了块号5,7,8之外的所有其他块值应在'td'列中设置为0。Pandas中的索引错误
Sid Itemid Block td 0 1 214536502 1 180.591 1 1 214536500 2 37.13 2 1 214536506 3 133.308 3 1 214577561 4 NaN 4 2 214662742 5 41.759 5 2 214662742 5 78.073 6 3 214576500 6 NaN 7 4 214821275 7 26.002 8 4 214821275 7 28.199 9 5 214821371 8 42.289 10 5 214821371 8 45.193
这是我的代码。我收到意想不到的输出。
j=k.groupby('Block').Sid.count()==1
te=k['Block'][j[j].index].index
k['td'][te]=0
预期输出 -
Sid Itemid Block td 0 1 214536502 1 0 1 1 214536500 2 0 2 1 214536506 3 0 3 1 214577561 4 0 4 2 214662742 5 41.759 5 2 214662742 5 78.073 6 3 214576500 6 0 7 4 214821275 7 26.002 8 4 214821275 7 28.199 9 5 214821371 8 42.289 10 5 214821371 8 45.193
'[j [j] .index] .index'不是有效的语法.. – karthikr
如果您要提供一个样本输入数据作为文本 – MaxU
@MaxU,将会有帮助添加样本数据集 –