パンダを使用してBasketball ReferenceからHTMLテーブルをインポートしましたが、空の文字列を持つ2つの名前の名前を変更しようとすると迷惑になります。ここで名前が空文字列の場合、Pandas DataFrame列の名前を変更するにはどうすればいいですか?
は、テーブルを引くためのコードです:
tables = pd.read_html('http://www.basketball-reference.com/leagues/NBA_2016_games.html')
games = tables[0]
列は次のようになります。u' '
とu' .1'
列以外のすべての名前を変更する
Out[138]:
Index([u'Date', u'Start (ET)', u'Visitor/Neutral', u'PTS', u'Home/Neutral',
u'PTS.1', u' ', u' .1', u'Notes'],
dtype='object')
は全く問題ありませんが、私は見つけることができませんラベルアプローチを使用して空の名前の名前を変更します。
私は(ここでは、わずか数の列の名前を変更するに限る)デフォルトでこれを試してみました:
column_names = {'Date': 'date', ' ': 'box', ' .1': 'overtime'}
games.rename(columns = column_names)
が、これはそのまま' '
と' .1'
列を残します。
このメソッドは動作します:
column_names = {games.columns[6]: 'box', games.columns[7]: 'overtime'}
を明示的位置を参照することなく、これらの名前を変更する方法はありますか?
これは、作業を行い、よりあなた! 直感的に、 'strip()'が動作し、 ''''を使って名前を変更できる理由はありますか? – MichaelWalker
空白はありませんが、[NO-BREAK SPACE](https://stackoverflow.com/a/26069208/2901002)です。しかし、それはまた 'ストリップ'も取り除くことができます。 – jezrael
意味があり、私はユニコードを見るためにリストへの変換の編集/追加を見ました - 偉大なことを知って、もう一度ありがとう! – MichaelWalker