我有一个数据框,其单列tbl_name
包含我的SQLite数据库中的表的列表:
tables = pd.read_sql_query("SELECT tbl_name FROM sqlite_master WHERE type = 'table'", db)
我想添加一列,其中包含数据库中每个表的行数。我希望它能起作用:
tables['count'] = tables.apply(lambda row : pd.read_sql_query(f"SELECT COUNT(*) FROM {row['tbl_name'}", db).iloc[0,0])
这会引发关键错误。这条线应该是什么样?
甚至是陌生人,要诊断出我只是使用一张表中的行数来尝试诊断的问题:
pd.read_sql_query(f'SELECT COUNT(*) FROM help_infotip', db).iloc[0,0]
>> 3
但是
tables['count'] = tables.apply(lambda row : pd.read_sql_query(f'SELECT COUNT(*) FROM help_infotip', db).iloc[0,0])
仅显示一个NaN值,而不是3s!
我显然犯了一些根本的错误,但是我看不到什么。
尝试一下: