前提・実現したいこと
python pandas
DataFrameにloc(at)で、特定の値を取得したい
発生している問題・エラーメッセージ
使用エディターはvscodeです。
vscode上で「loc」に波線がついて、以下のメッセージが表示されおり
値が取得できません。
Cannot access member "loc" for type "TextFileReader" Member "loc" is unknown Pylance(reportGeneralTypeIssues) loc: Unknown
該当のソースコード
読み込んでいるcsvファイルの構造
csv
1number,name,amount 21,name1,100 32,name2,200 4
python
1#クラス定義ファイル 2import pandas as pd 3 4class Test: 5 def __init__(self,file_csv): 6 self.df = pd.read_csv(file_csv, encoding='utf-8',index_col=0) 7 8 def get_name(self, number): 9 name = self.df.loc[number, 'name'] 10 <補足> 11 #このあと、この「name」をリストに追加し、 12 #最終的にリストを戻します 13
python
1#実行ファイル 2import test 3 4test_instance =test.Test("csvfile.csv") 5gotname = test_instance.get_name(2) 6
試したこと
vscodeのターミナルにてpython shellで実行すると
エラーはなく、値が取得できています。
また、1つのファイル内で、csvの読み込みからloc実行までを試したところ
やはりエラーはでず、値の取得ができました。
Pylanceで、reportGeneralTypeIssues を確認したところ、タイプエラーのようなのですが、
csvを読み込んで作成されたdfのtypeをprint(type(self.df))で確認したころ、
<class 'pandas.core.frame.DataFrame'> でした。
自力ではこれといった情報にたどりつくことができませんでした。
よろしくお願いいたします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/07/21 13:15
2021/07/21 13:20