私は 'df'と呼ばれるパンダデータセットを持っています。pandasデータセットでSQLクエリを実行する
私は以下のようにすることができます。
df.query("select * from df")
ありがとうございます。 Rを知っている人のために
、あなたがRでSQLコードを実行することができsqldfと呼ばれるライブラリがあり、私の質問は基本的に、あなたがサブセットを返すようにDataFrame.query(condition)
を使用することができますのpython
私は 'df'と呼ばれるパンダデータセットを持っています。pandasデータセットでSQLクエリを実行する
私は以下のようにすることができます。
df.query("select * from df")
ありがとうございます。 Rを知っている人のために
、あなたがRでSQLコードを実行することができsqldfと呼ばれるライブラリがあり、私の質問は基本的に、あなたがサブセットを返すようにDataFrame.query(condition)
を使用することができますのpython
これが行うことになってpandas.query
ではありません、あなたが(のような同じRでsqldf
)をパッケージpandasql
で見ることができ
import pandas as pd
import pandasql as ps
df = pd.DataFrame([[1234, 'Customer A', '123 Street', np.nan],
[1234, 'Customer A', np.nan, '333 Street'],
[1233, 'Customer B', '444 Street', '333 Street'],
[1233, 'Customer B', '444 Street', '666 Street']], columns=
['ID', 'Customer', 'Billing Address', 'Shipping Address'])
q1 = """SELECT ID FROM df """
print(ps.sqldf(q1, locals()))
ID
0 1234
1 1234
2 1233
3 1233
でsqldfのようないくつかのライブラリが存在していますこのようなcondition
に一致するデータフレームの:
df = pd.DataFrame(np.arange(9).reshape(3,3), columns=list('ABC'))
df
A B C
0 0 1 2
1 3 4 5
2 6 7 8
df.query('C < 6')
A B C
0 0 1 2
1 3 4 5
df.query('2*B <= C')
A B C
0 0 1 2
df.query('A % 2 == 0')
A B C
0 0 1 2
2 6 7 8
これはSELECT * FROM df WHERE
が暗示されることを除いて、基本的にSQL文と同じ効果です。
あなたは追加できます。 'df.eval' https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.eval.html – Wen
申し訳ありませんが、私たちの想像力が乏しいです。いくつかの具体的なデータと、実際にあなたが望むものを提供してください。 –
'print df'? lol –
あなたがしたいことはできません。データフレームはSQLデータベースではなく、1つのように照会することはできません。 – Deb