を使ってパンダのオブジェクト列は、このテーブルを考えるとスライス:私はposition + 1
とposition - 1
間の配列の一部をスライスしたい他の列
uniprots = pd.DataFrame({'position': [3,4,6,3,2], 'amino_var': ['A', 'G', 'I', 'C', 'V'], 'sequence': ['MWSWKCLLFWA', 'MWSWKCLLFWH', 'MWSWKCLFLVH', 'MWSWVESFLVH', 'MWEQAQPWGAH']})
:あなたはこのデータフレームを構築することができます
╔═══╦══════════╦═══════════╦═════════════╗
║ ║ position ║ amino_var ║ sequence ║
╠═══╬══════════╬═══════════╬═════════════╣
║ 0 ║ 3 ║ A ║ MWSWKCLLFWA ║
║ 1 ║ 4 ║ G ║ MWSWKCLLFWH ║
║ 2 ║ 6 ║ I ║ MWSWKCLFLVH ║
║ 3 ║ 3 ║ C ║ MWSWVESFLVH ║
║ 4 ║ 2 ║ V ║ MWEQAQPWGAH ║
╚═══╩══════════╩═══════════╩═════════════╝
かをたとえば、の文字をamino_var
の文字に置き換えます。
私はこの試みた:
uniprots.sequence.str[uniprots.position - 1 : uniprots.position + 1]
をしかし、私はNaNをの完全なシリーズを取得します。私はあなたが範囲の位置の前に、その範囲で最初の抽出値が必要と考えてい
╔═══╦════════╗
║ ║ output ║
╠═══╬════════╣
║ 0 ║ WAW ║
║ 1 ║ SGK ║
║ 2 ║ KIL ║
║ 3 ║ WCW ║
║ 4 ║ MVE ║
╚═══╩════════╝
したがって、ここではユニプロットとアミノは使用されていません。わかりやすくするために質問から除外できました。また、あなたは-5から+5を望んでいますが、あなたの試みでは-1と+1を書いています。 – rnso
1)あなたの質問を修正してください... 2)期待される出力を提供してください。 –
完了!フィードバックをお寄せいただきありがとうございます。 – marlanbar