パンダ シリーズ s1 があり、2 つの入力を使用して 1 つの新しい値を作成する関数を適用して、新しいシリーズ s2 を作成したいと考えています。この関数は、s1 の 2 値ウィンドウに適用されます。結果の系列 s2 は、s1 より 1 つ少ない値を持つ必要があります。これを達成する方法はたくさんありますが、非常に効率的に行う方法を探しています。これは Linux 上にあり、現在 python 2.7 および 3.4 と pandas 15.2 を実行していますが、必要に応じて pandas を更新できます。これが私の問題の単純化です。私のシリーズは、弦として表現された音高で構成されています。
import pandas
s1 = pandas.Series(['C4', 'E-4', 'G4', 'A-4')
この機能を使用したい:
def interval_func(event1, event2):
ev1 = music21.note.Note(event1)
ev2 = music21.note.Note(event2)
intrvl = music21.interval.Interval(ev1, ev2)
return intrvl.name
s1 および s1 のシフト バージョンで、次のシリーズを取得します。
s2 = pandas.Series(['m3', 'M3', 'm2'])