私はこのような混合値を持つ系列Sを持っている場合は要素がJSON形式であるとき、それはスキップするようにパンダシリーズの要素で条件付き分岐を実行するにはどうすればよいですか?
textelement
{"id":1,"name":"whatever","value":"sonso"}
name-value
は、どのように私は条件文を作るのですが、それはテキスト文字列または名 - だとき値のペア、JSON形式に変換しますか?
私はこのような混合値を持つ系列Sを持っている場合は要素がJSON形式であるとき、それはスキップするようにパンダシリーズの要素で条件付き分岐を実行するにはどうすればよいですか?
textelement
{"id":1,"name":"whatever","value":"sonso"}
name-value
は、どのように私は条件文を作るのですが、それはテキスト文字列または名 - だとき値のペア、JSON形式に変換しますか?
あなたはstr.startswith
によってboolean indexing
とmask
によってjson
フォーマットを除外することができる:
s = pd.Series(['textelement',{"id":1,"name":"whatever","value":"sonso"}, 'name-value'])
print(s)
0 textelement
1 {'id': 1, 'value': 'sonso', 'name': 'whatever'}
2 name-value
dtype: object
#cast all values to string
s = s.astype(str)
#check which string starts with `{`
mask = s.str.startswith('{')
print (mask)
0 False
1 True
2 False
dtype: bool
print (~mask)
0 True
1 False
2 True
dtype: bool
#filter by inverted mask with ~
s = s[~mask]
print (s)
0 textelement
2 name-value
dtype: object
Whasは、サンプルデータからフィルタリングされた出力からJSONを望まれていますか? – jezrael