リストからNoneを削除

python, pandas でリストから None を削除する方法メモ。

import pandas as pd

df = pd.DataFrame(
    data={'01': pd.Series([None,'Tokyo','Chiba','Tokyo',None,'Chiba','Kanagawa','Chiba','Tokyo','Saitama',None]),
          }
)
df

結果:
          01
0       None
1      Tokyo
2      Chiba
3      Tokyo
4       None
5      Chiba
6   Kanagawa
7      Chiba
8      Tokyo
9    Saitama
10      None
df.dropna()

結果:

         01
1     Tokyo
2     Chiba
3     Tokyo
5     Chiba
6  Kanagawa
7     Chiba
8     Tokyo
9   Saitama

リスト内包表記を使用する場合。

test = [None,'Tokyo','Chiba','Tokyo',None,'Chiba','Kanagawa','Chiba','Tokyo','Saitama',None]

test1 = [t for t in test if t is not None]
test1

結果:
['Tokyo', 'Chiba', 'Tokyo', 'Chiba', 'Kanagawa', 'Chiba', 'Tokyo', 'Saitama']

重複を削除する場合。

test2 = set(test1)
test2

結果:
{'Chiba', 'Kanagawa', 'Saitama', 'Tokyo'}
参考記事

pandasで欠損値NaNを削除(除外)するdropna

Python リスト内からNoneを除去する方法

[python]リストからNoneを除外する簡単な書き方

【Python】pandasのデータフレームを作成する方法6つ

お薦め