如何选择非英文命名列?

2024-04-25 08:48:37 发布

您现在位置:Python中文网/ 问答频道 /正文

Dataframe有非英文命名的列,如何选择这些列?你知道吗

import pandasql as pdsql

pysql = lambda q: pdsql.sqldf(q, globals())
sqlquery = 'select ''Машина'', min(''Дата доставки'') from days_ans group by 1'
pysql(sqlquery)

最后一行返回错误:

PandaSQLException: (sqlite3.OperationalError) near "доставки": syntax error [SQL: 'select Машина, min(Дата доставки) from days_ans group by 1']

PS不指定列-按应操作:

sqlquery = 'select * from days_ans limit 1'
sqlquery = 'select ''Партнер'' from days_ans limit 1'

我认为这个问题与有空格的列有关


Tags: fromimportdataframebygroupmindaysselect
1条回答
网友
1楼 · 发布于 2024-04-25 08:48:37

你的单引号''连在一起,变成一无所有。请尝试在字符串的两边使用双引号:

>>> sqlquery = 'select ''Машина'', min(''Дата доставки'') from days_ans group by 1'
>>> sqlquery
'select Машина, min(Дата доставки) from days_ans group by 1'
>>> sqlquery = "select ''Машина'', min(''Дата доставки'') from days_ans group by 1"
>>> sqlquery
"select ''Машина'', min(''Дата доставки'') from days_ans group by 1"

String literal concatenation

相关问题 更多 >