3
は、Letter
のいずれかの値が同じ場合、shift()
を使用して以前のインデックスからデータを取り込みたいと考えています。Pandasデータフレームの行を比較するために適用関数内のshift()関数を使用する
import pandas as pd
df = pd.DataFrame(data=[['A', 'one'],
['A', 'two'],
['B', 'three'],
['B', 'four'],
['C', 'five']],
columns=['Letter', 'value'])
df['Previous Value'] = df.apply(lambda x : x['value'] if x['Letter'].shift(1) == x['Letter'] else "", axis=1)
print df
私はエラーを取得しています:
AttributeError: ("'str' object has no attribute 'shift'", u'occurred at index 0')
所望の出力:
Letter value Previous Value
0 A one
1 A two one
2 B three
3 B four three
4 C five
shift
を使用して、現在の行が前の行と一致して、あなたの条件に