■概要
表の列1を参照して、列2のデータを取り出したい。
表は以下のような特徴があります。
・列1にはデータ番号が各2個ずつ若い順に並んでいる。
・カラムはなし。
列1 | 列2 |
---|---|
1 | 10 |
1 | 8 |
: | : |
4 | 12 |
4 | 14 |
■実現したいこと
取り出したいデータ番号の2番目の行の値を取り出したい。
(例)
データ番号1 → 8
データ番号4 → 14
python初心者で、質問内容に不足があるかもしれませんが、
ご教授の方よろしくお願いいたします。
発生している問題・エラーメッセージ
int() argument must be a string, a bytes-like object or a number, not 'Int64Index'
該当のソースコード
Python
1import pandas as pd 2import numpy as np 3#データインポート 4csv_input = pd.read_csv(file,encoding="cp932") 5#取り出したいデータ番号指定 6number = 4 7#列1において、numberと同じ値の行のみを抽出 8n = csv_input.iloc[:,2] == number 9m = n[n == True] 10#numberと同じ値の行の2個目をindexに格納 11index = int(m.index[2:3]) 12#ほしいデータをdataに格納 13data = csv_input.iat[index,1]
補足情報(FW/ツールのバージョンなど)
anaconda3
Python3.7
回答2件
あなたの回答
tips
プレビュー