1
別の列に文字列をスライスする列の値を使用します。パンダデータフレーム:私は次のようにパンダのデータフレームを持って
col1 col2 col3
0 1 3 ABCDEFG
1 1 5 HIJKLMNO
2 1 2 PQRSTUV
私はcol1
に示すように、位置からcol3
の部分文字列である必要があり、別の列を追加しますcol2
に示されている位置に移動します。生じるはずであるcol3[(col1-1):(col2-1)]
ような何か、:
col1 col2 col3 new_col
0 1 3 ABCDEFG ABC
1 1 5 HIJKLMNO HIJK
2 1 2 PQRSTUV PQ
私は次のように試してみました:
my_df['new_col'] = my_df.col3.str.slice(my_df['col1']-1, my_df['col2']-1)
と
my_df['new_col'] = data['col3'].str[(my_df['col1']-1):(my_df['col2']-1)]
Iもしながら、それらの両方は、NaN
の列になり2つの数値(すなわちdata['col3'].str[1:3]
)を挿入しても問題ありません。私はチェックし、型が正しい(int64、int64、object)。また、そのようなコンテキストの外では(たとえばforループを使用して)、私は仕事を終えることができますが、私はDataFrameを利用するライナーを1つ好むでしょう。私は間違って何をしていますか?
それは完全に働きました。ありがとう! –
喜んで助けることができます!いい日! – jezrael