相关疑难解决方法(0)

pandas dataframe列名:删除特殊字符

一些小丑制作了一个Lotus数据库/ applet,用于跟踪我们公司的工程问题.笑话是关键信息是用特殊字符命名的......数字符号(哈希标记,井号,\ u0023).

缩写样本:

KA#         Issue Date      Current Position
27144       1/9/2014        Accounting
27194       12/20/2012      Engineering
32474       4/21/2008       Engineering
32623-HOLD  4/25/2016       Engineering
32745       11/13/2012      SEPE
32812       10/30/2013      Engineering
32817       12/7/2012       Purchasing
32839       1/8/2013        SEPE
Run Code Online (Sandbox Code Playgroud)

我将此表(4K行,15列)输出到csv文件,并在python3中作为pandas数据帧进行处理.

我生成各种输出.如果我使用类似的东西:

df.iloc[:,[0,3,1,8,9,10]]
Run Code Online (Sandbox Code Playgroud)

我获得了适当的输出,键列显示为"KA#".(当我说"关键列"时,我的意思是"最重要的"......不是"索引".我保留了一个串行索引)

不幸的是,人们有时会在我导出到csv之间弄乱Lotus中的列顺序,所以我无法保证"KA#"将是任何特定的列号.我想使用列名:

df.loc[:,["KA#","Issue Date","Current Position"]]
Run Code Online (Sandbox Code Playgroud)

但该"KA#"专栏充满了NaN's.

谢谢你尽你所能的帮助.

最后,如果我尝试重命名"KA#""KA":

df['KA#'].name = 'KA'
Run Code Online (Sandbox Code Playgroud)

抛出一个KeyError和

df = df.rename(columns={"KA#": "ka"})
Run Code Online (Sandbox Code Playgroud)

完全被忽略了.该列显示为"KA#".

任何人都可以想到摆脱或处理该符号的方法吗?在这一点上,我甚至会选择正则表达式.

special-characters python-3.x pandas

6
推荐指数
1
解决办法
7635
查看次数

Python调用带有表值参数的sql-server存储过程

我有一个加载、转换和计算数据的 python 脚本。在 sql-server 中有一个存储过程,它需要一个表值参数、2 个必需参数和 2 个可选参数。在 sql server 中,我可以调用这个 SP:

USE [InstName]
GO

DECLARE @return_value int
DECLARE @MergeOnColumn core.MatchColumnTable

INSERT INTO @MergeOnColumn
SELECT 'foo.ExternalInput','bar.ExternalInput'

EXEC    @return_value = [core].[_TableData]
        @Target = N'[dbname].[tablename1]',
        @Source = N'[dbname].[table2]',
        @MergeOnColumn  = @MergeOnColumn,
        @Opt1Param = False,
        @Opt2Param = False

SELECT  'Return Value' = @return_value

GO
Run Code Online (Sandbox Code Playgroud)

经过全面搜索,我找到了以下帖子:

如何使用需要用户定义类型表参数的 SQLAlchemy 调用存储过程

它建议使用 PYTDS 和 sql-alchemy 的方言“sql alchemy pytds”来调用具有表值参数的 SP。通过这篇文章和文档,我创建了以下 Python 脚本:

import pandas as pd
import pytds
from pytds import login
import sqlalchemy as sa
from …
Run Code Online (Sandbox Code Playgroud)

python sql-server sqlalchemy table-valued-parameters python-db-api

5
推荐指数
1
解决办法
5648
查看次数