Transform 3.1 用户手册(SPSS 的通用数据转换程序)
1 安装
以Win 10系统和SPSS 26版为例。对SPSS点击鼠标右键,选择“以管理员身份运行”。
通过“扩展→使用程序→安装定制对话框”进入安装界面。
选择后缀名为“.spd”的目标文件,点击打开。
随后,SPSS提示安装成功,并显示对话框所在的菜单位置。之后,便可以在“转换”菜单下找到本扩展插件。
2 数据、界面与功能
插件压缩包内自带名为“data.sav”的数据,共包含50个个案与7个变量。本手册的案例均使用此数据。
插件主界面涉及6个主要的区域。1)目标变量。此处为大部分等待转换变量的选择列表。2)Box-Cox目标变量。此处的选择功能只针对Box-Cox转换中的因变量。3)群组变量与启用。对于部分功能支持在数据亚组中进行转换,选择群组变量后还需勾选启用选框。4)语言。可选择变量标签语言与部分输出结果语言。5)经典。此处提供四种最常使用的数据转换功能。6)子对话框。除四种经典功能外,其余转换功能均需要通过子对话框进入。子对话框将在具体转换功能说明中进行介绍,此处略过。
本插件主要包含以下转换功能:1)多变量总分计算;2)多变量平均分计算;3)均值中心化;4)标准化(z转换);5)变量分数分组(含二分与三分);6)缩放;7)反向计分;8)经典正态转换;9)Box-Cox的Lambda值测试与转换;10)虚拟化(生成多分类变量的哑变量);11)Box-Tidwell交互项生成;12)排秩;13)指数化;14)对数化;15)取绝对值;16)四舍五入为整数。
3 总分
本功能支持:1)语言选择。
许多领域都存在对多个变量计算总分的需求,特别是在以问卷为主要研究工具的领域,量表总分的计算更是令人感到繁琐的问题。
对于变量A1A_{1}A1至变量AnA_{n}An,其总分Sum\text{Sum}Sum为:
Sum=A1+…+An{Sum = A}_{1} + \ldots + A_{n} Sum=A1+…+An
假设A1与A2为需要计算总分的变量。进入对话框后,参考下图进行选择。
随后,SPSS生成以“SUM_”为前缀的总分变量。
根据语言选择,该变量生成中文的变量标签。
4 平均分
本功能支持:1)语言选择。
平均分主要用于问卷调查领域中,量表分数的计算。
对于变量A1A_{1}A1至变量AnA_{n}An,其平均分Mean\text{Mean}Mean为:
Mean=(A1+…+An)/n{Mean = (A}_{1} + \ldots + A_{n})/n Mean=(A1+…+An)/n
假设A1与A2为需要计算平均分的变量。进入对话框后,参考下图进行选择。
随后,SPSS生成以“MEAN_”为前缀的新变量。
根据语言选择,该变量生成中文的变量标签。
5 均值中心化
本功能支持:1)多变量同时转换;2)分组中心化;3)语言选择。
每一个连续变量都会存在平均值(假设为A‾\overset{\overline{}}{A}A),均值中心化表示将该变量向左平移A‾\overset{\overline{}}{A}A个单位,使均值为0。
对于连续变量AAA,有A1A_{1}A1至AnA_{n}An的n个数据,其变量均值A‾\overset{\overline{}}{A}A为:
A‾=(A1+…+An)/n{\overset{\overline{}}{A} = (A}_{1} + \ldots + A_{n})/n A=(A1+…+An)/n
而均值中心化后的新变量A′n{A'}_{n}A′n为:
A′n=An−A‾{A^{'}}_{n} = A_{n} - \overset{\overline{}}{A} A′n=An−A
5.1 均值中心化
假设B1为需要均值中心化的变量。进入对话框后,参考下图进行选择。
随后,SPSS生成以“MC_”为前缀的中心化变量。
根据语言选择,该变量生成中文的变量标签。
5.2 分组中心化
若数据来自于异质性较大的群体,需要进行分组分析,则可以选择使用分组中心化。
假设B1为需要均值中心化的变量,E1为分组变量。参考下图进行选择。
随后,SPSS生成以“GMC_”为前缀的分组中心化变量。
根据语言选择,该变量生成中文的变量标签。
6 标准化
本功能支持:1)多变量同时转换;2)分组标准化;3)语言选择。
标准化也称为z转换,指将原变量转换为均值为0、标准差为1的新变量,便可结合正态分布对个案分数进行解读。标准化可以看做是中心化的进一步操作,将中心化变量除以变量自身的标准差即可得到标准化变量。
对于均值为MMM、标准差为SD\text{SD}SD的变量AAA,其标准化后的变量A′A'A′为:
A′n=(An−M)/SD{A^{'}}_{n} = (A_{n} - M)/SD A′n=(An−M)/SD
6.1 标准化
假设B1为需要标准化的变量。进入对话框后,参考下图进行选择。
随后,SPSS生成以“STD_”为前缀的标准化变量。
根据语言选择,该变量生成中文的变量标签。
6.2 分组标准化
若数据来自于异质性较大的群体,需要进行分组分析,则可以选择使用分组标准化。
假设B1为需要标准化的变量,E1为分组变量。参考下图进行选择。
随后,SPSS生成以“GSTD_”为前缀的分组标准化变量。
根据语言选择,该变量生成中文的变量标签。
7 分组
本功能支持:1)多变量同时转换;2)在群组内分组;3)分组编号反向;4)语言选择。
本功能核心为将连续变量划分为两组或三组,可使用预设数值进行分组,或使用自定义数组进行分组:
分组功能 | |||
---|---|---|---|
分组 | 组别切割点 | 组别编码 | |
二分 | 均值 | ≥均值为1,其余为0 | |
中位数 | ≥中位数为1,其余为0 | ||
自定义 | ≥自定义值为1,其余为0 | ||
三分 | 16、84百分位数 | ≥84分位数为2,<16分位数为0,其余为1 | |
-1、+1标准差 | ≥+1标准差为2,<-1标准差为0,其余为1 | ||
自定义 | ≥高值为2,<低值为0,其余为1 |
7.1 二分组
假设B1为需要进行二分组的变量,希望以均值作为切割点,使≥均值的个案编码为1,其余为0。参考下图进行操作。
随后,SPSS生成以“GROUP_”为前缀的分组变量。
根据语言选择,该变量生成中文的变量标签与值标签。
7.2 三分组
假设B1为需要进行三分组的变量,希望以16、84百分位数作为切割点,将其分为三组。参考下图进行操作。
随后,SPSS生成以“GROUP_”为前缀的分组变量。
根据语言选择,该变量生成中文的变量标签与值标签。
7.3 反向分组
假设B1为需要进行二分组的变量,希望以中位数作为切割点,将其分为两组,并且高分组编码为0,低分组编码为1。参考下图进行操作。
随后,SPSS生成以“GROUP_”为前缀的分组变量。
根据语言选择,该变量生成中文的变量标签与值标签。
7.4 群组内分组
若数据来自于异质性较大的群体,需要进行分组分析,则可以选择使用群组内分组。需注意的是,群组内分组功能只能在非自定义分组中执行。
假设B1为需要进行二分组的变量,希望以中位数作为切割点,将其分为两组,并且高分组编码为0,低分组编码为1。同时,用以标识不同样本的群组变量为E1。可参考下图进行操作。
随后,SPSS生成以“GGROUP_”为前缀的分组变量。
根据语言选择,该变量生成中文的变量标签与值标签。
8 缩放
本功能支持:1)多变量同时转换;2)分组缩放;3)语言选择。
在连续数据的处理中,有时候研究者会想要将数据转换成更容易理解的分数,例如将任意取值范围的连续数据转换至[0,100]\lbrack 0,\ \ 100\rbrack[0, 100]或[0,1]\lbrack 0,\ \ 1\rbrack[0, 1]的范围。在这个过程中,可能需要对数据同时进行平移(加上或减去常数)与缩放(乘以或除以常数)
对于取值在[a,b]\lbrack a,\ \ b\rbrack[a, b]之间的连续变量AAA,可以使用以下公式将其转换[c,d]\lbrack c,\ \ d\rbrack[c, d]的任意范围:
A′n=An−ab−a∗(d−c)+c{A^{'}}_{n} = \frac{A_{n} - a}{b - a}*\left( d - c \right) + c A′n=b−aAn−a∗(d−c)+c
插件内置三个缩放范围,分别为[0,1]\lbrack 0,\ \ 1\rbrack[0, 1]、KaTeX parse error: Undefined control sequence: \ at position 15: \lbrack - 1,\ \̲ ̲1\rbrack和[0,100]\lbrack 0,\ \ 100\rbrack[0, 100],读者也可自定义范围。
8.1 自定义缩放范围
假设B1为需要进行缩放的变量,准备将其缩放至[5,25]\lbrack 5,\ \ 25\rbrack[5, 25]。可参考下图进行操作。
随后,SPSS生成以“RES_”为前缀的新变量。
根据语言选择,该变量生成中文的变量标签。
8.2 分组缩放
若数据来自于异质性较大的群体,需要进行分组分析,则可以选择使用分组缩放。需注意的是,分组缩放功能只能在非自定义范围中执行。
假设B1为需要进行缩放的变量,而E1为分组变量,目标是在E1的两个分组内将B1分别缩放为[0,1]\lbrack0,\ 1\rbrack[0, 1]。可参考下图进行操作。
随后,SPSS生成以“GRES_”为前缀的新变量。
根据语言选择,该变量生成中文的变量标签。
9 反向
本功能支持:1)多变量同时转换;2)分组反向;3)语言选择。
变量的内涵总是与计分方式相关,假如将计分方式颠倒(例如1-5点计分颠倒为5-1点计分),则变量的含义将完全相反。也有许多变量一开始便以反向题出现。譬如,问卷调查领域所使用的量表就经常包含反向题,这要求使用者提前将其转为正向再进行后续分析。
一个1-5点计分的量表,其分数在正向转换后,应该有1分变成5分,以此类推。然而,假如将原变量加上负号,也可以使变量在后续的分析中(譬如回归分析)起到正向化的效果。因此,需要额外指定反向的方法。
本功能提供两种反向方法,第一种为自定义方法,适合用于问卷数据;第二种为自动反向。对于取值范围在[a,b]\lbrack a,\ \ b\rbrack[a, b]的变量AAA,自动反向使用以下公式
A′n=a+b−A{A^{'}}_{n} = a + b - A A′n=a+b−A
上述公式假设当前变量取值范围即变量实际范围,然而,问卷数据里经常出现意外情况。譬如问卷数据为1-5点计分,但是在收集回来的数据里没有个案填1,只有2、3、4与5。如果使用上述公式,则2分的个案将计为5分。这是不合理的,也会导致后续的总分计算出错。对于问卷数据,建议使用自定义方式进行反向,手动指定变量取值范围的上下限。
9.1 自定义反向
假设A1为需要进行反向的变量,属于1-5点计分。可参考下图进行操作。
随后,SPSS生成以“REV_”为前缀的新变量。
根据语言选择,该变量生成中文的变量标签。
9.2 分组反向
若数据来自于异质性较大的群体,需要进行分组分析,则可以选择使用分组反向。需注意的是,分组反向功能只能在自动反向时执行。
假设B1为需要进行反向的变量,E1为分组变量。可参考下图进行操作。
随后,SPSS生成以“GREV_”为前缀的新变量。
根据语言选择,该变量生成中文的变量标签。
10 经典正态转换
本功能支持:1)多变量同时转换;2)语言选择。
许多分析技术要求数据符合正态分布,但现实数据又经常无法满足这个条件,于是统计学家们提出将数据进行转换以接近正态分布。常见的非正态分布与对应转换方法见下图:
以上转换方法来自于Tabachnick和Fidell(2013),以及Pallant(2011)。在本插件中已经实现上述转换的自动化,故不再列出转换公式。值得一提的是,上述转换中针对右偏的方法大都要求变量数值不能为0或负数,否则应先对变量进行校正,通过加上一个常数对其进行平移,使其最小值为1。如果读者手动进行转换则注意此问题,而使用本插件时,会自动进行校正,无需担心。
假设B1为需要进行正态转换的变量,需对其先进行偏度判定。通过“分析→描述→频率”进入对话框,选入B1并输出带正态曲线的直方图。
随后,SPSS输出B1的直方图,显示为右偏。
确定变量分布后,进入本插件,参考下图进行操作。一般而言,建议同时进行多种正态转换,选择效果最好的一个。
随后,SPSS生成以“NORM”与“(数字)_”为前缀的新变量。
根据语言选择,该变量生成中文的变量标签。
读者可以对转换后的变量进行探索,以确定最终使用哪种转换方法生成的结果。
11 Box-Cox转换
本功能支持:1)特定组的Lambda测试与转换;2)语言选择。
Box-Cox主要用于确定因变量的最佳转换,同时拟合线性回归模型。Box-Cox使用以下公式对变量yyy进行转换:
y(λ){yλ−1λ(λ≠0)logy(λ=0)y^{(\lambda)}\left\{ \begin{matrix}\frac{y^{\lambda} - 1}{\lambda}\ \ \ (\lambda \neq 0) \\logy\ \ \ \ \ \ \ (\lambda = 0) \\\end{matrix} \right.\ y(λ){λyλ−1 (λ=0)logy (λ=0)
λ\lambdaλ即Lambda。此转换要求yyy必须大于0,当yyy小于0时,Box和Cox(1964)提供了另外的校正公式:
y(λ){(y+λ2)λ1−1λ1λ1≠0)log(y+λ2)(λ1=0)y^{(\lambda)}\left\{ \begin{matrix}\frac{{(y + \lambda_{2})}^{\lambda_{1}} - 1}{\lambda_{1}}\ \ \ \lambda_{1} \neq 0) \\log(y + \lambda_{2})\ \ \ \ \ \ \ \ (\lambda_{1} = 0) \\\end{matrix} \right.\ y(λ){λ1(y+λ2)λ1−1 λ1=0)log(y+λ2) (λ1=0)
对于后者,保证y>−λ2y >-\lambda_{2}y>−λ2。换言之,校正公式总是先将原变量平移至最小值大于0后,再进行Box-Cox转换。在本插件中,对于小于0的yyy,总是将其校正到最小值为1。
对于同一个变量可以有不同的Lambda值进行转换,故一般先对变量的Lambda值进行大范围检测,以选择最优的Lambda值,这在本插件中可以自动化执行。常见的Lambda取值有2(平方)、1(不进行转换)、0.5(平方根)、0.333(立方根)、0.25(四次方根)、0(自然对数)、-0.5(倒数平凡根)和-1(倒数)。
测试Lambda值的语法改自Grüner1,Grüner的版本现已上传至IBM的官方扩展仓库中。实际上,该语法源自更早的某位作者,但已不可考。在IBM官网上的官方记录中也存在类似版本2。
11.1 测试Lambda值
假设B1为需要Box-Cox转换的因变量,而A1与A2为自变量。参考下图进行操作。
在测试结果中,需重点关注的是“95%置信区间”下的结果。该结果中提供的Lambda值是使用最大似然法计算得到的可行范围。
11.2 测试特定组的Lambda值
若数据来自于异质性较大的群体,需进行分组分析,则可以测试特定组的Lambda值。
假设B1为需要Box-Cox转换的因变量,而A1与A2为自变量,而E1为样本分组,本次计划测试E1中值为0的组的Lambda值。参考下图进行操作。
在测试结果中,需重点关注的是“95%置信区间”下的结果。该结果中提供的Lambda值是使用最大似然法计算得到的可行范围。
11.3 Box-Cox转换
以11.1的假设为基础,即B1为需要Box-Cox转换的因变量,而A1与A2为自变量。根据测试结果,Lambda值的可行范围在[0.2,0.9]之间,Lambda为0.5时达到最优(Log-Likelihood=-239.240),故选定Lambda为0.5进行转换。参考下图进行操作(分组转换参考11.3)。
随后,SPSS生成以“BCOX_”为前缀的新变量。
根据语言选择,该变量生成中文的变量标签。
12 虚拟化
本功能支持:1)多变量同时转换。
虚拟化是指将多分类(3类及3类以上)变量转换成多个0与1取值的二分类变量,用以表示原先的每个具体分类。虚拟化主要用于回归分析中对多分类自变量的处理。虚拟化是最为大众所熟悉的多分类自变量处理方法,也称为指标法。经过此方法处理得到的二分变量称为虚拟变量或哑变量。
假设存在分类变量“职业”,共5个类别。如果对其进行虚拟化,则会选择一个类别作为参照组(或称基准组,此处为“职业1”),使用其余类别与之比较,产生N-1个新的虚拟变量(N为原变量类别数)。除去参照组,新的虚拟变量中对应于原变量某一类的个案取值为1,非该类个案取值为0。因此,下表中的“虚拟2”至“虚拟5”为使用“职业1”作为参照组而产生的虚拟变量。以“虚拟2”为例,对应于原变量中的公务员一类全部取值为1,非公务员则取值为0。“虚拟3”至“虚拟5”以此类推。
分类变量与虚拟变量 |
---|
职业 |
1 |
1 |
2 |
2 |
3 |
3 |
4 |
4 |
5 |
5 |
含义 |
注:职业1=学生,职业2=公务员,职业3=个体户,职业4=军人,职业5=无业。 |
本功能对具有N个类别的分类变量将生成N个虚拟变量,以方便使用者自行选择参照组。此外,本功能要求分类变量采用连续整数进行编码。
假设C1为需要虚拟化的多分类变量,共3个类别。参考下图进行操作。
随后,SPSS生成“DUMMY_”为前缀、“_(数字)”为后缀的新变量。不提供变量标签。
13 Box-Tidwell交互项
本功能支持:1)多变量同时构造交互项;2)分组构造交互项;3)语言选择。
许多研究者在二元Logistic回归中喜欢使用Box-Tidwell方法构造交互项以检查自变量与Logit转换后的因变量是否存在非线性关系(Cohen
et al., 2003)。
此方法需要对变量进行预处理,对连续变量先以自然常数eee为底数求取对数值,而后使用对数值与原变量进行相乘,求取调节项。对于任意的连续变量AAA,其调节项Int\text{Int}Int为:
Int=A∗Ln(A)Int = A*Ln(A) Int=A∗Ln(A)
此方法要求AAA必须大于0。假如变量最小值小于或等于0,则可以对变量进行平移,使变量最小值为1。本功能将自动对最小值小于或等于0的变量进行上述校正。
此外,假如变量均值远大于标准化,会造成变量与二次项的相关系数过高,可能会使变量无法进入方程。本功能提供了额外的标准化选项以解决此问题。
13.1 Box-Tidwell交互项
假设变量B1为需要构造交互项的变量。参考下图进行操作。
随后,SPSS生成以“BOXT_”为前缀的交互项。
根据语言选择,该变量生成中文的变量标签。
13.2 分组构造Box-Tidwell交互项
若数据来自于异质性较大的群体,需要进行分组分析,则可以选择进行分组构造交互项。需要注意的是,只有在变量为非正数或使用标准化时,分组才有意义。
假设变量D1为需要构造交互项的变量,E1为分组变量。参考下图进行操作。
随后,SPSS生成以“GBOXT_”为前缀的交互项。
根据语言选择,该变量生成中文的变量标签。
14 排秩
本功能支持:1)多变量同时转换;2)分组排秩。
秩可理解为比赛名次,但有所区别。以下表为例,对分数进行从高到低的排秩(也可反向)。1号个案分数最高,秩为1;2-4号等3个个案分数一致,且按照名次应该占据第2、第3和第4,于是使用秩的总和除以个案数量作为秩,即(2+3+4)/3=3。因此,这3个个案的秩均为3。同理,5号和6号个案分数相同,其秩为(5+6)/2=5.5。
| 个案排秩(从高到低)|
|-------------|------|----- ||
| 个案ID | 分数 | 秩 |
| 1 | 89 | 1 |
| 2 | 87 | 3 |
| 3 | 87 | 3 |
| 4 | 87 | 3 |
| 5 | 85 | 5.5 |
| 6 | 85 | 5.5 |
| 7 | 84 | 7 |
| 8 | 83 | 8 |
| 9 | 76 | 9.5 |
| 10 | 76 | 9.5 |
14.1 最大值秩为1
假设变量B1为需要排秩变量,且计划将秩1赋予最大值。参考下图进行操作。
随后,SPSS生成以“R”为前缀的新变量。
此功能无法对变量标签语言进行设定。
14.2 分组排秩
若数据来自于异质性较大的群体,需要进行分组分析,则可以选择分组排秩。
假设变量B1为需要排秩的变量,且计划将秩1赋予最小值,E1为分组变量。参考下图进行操作。
随后,SPSS生成以“R_”为前缀的新变量。
虽然无法指定变量标签语言,但标签里会对分组变量进行说明。
15 指数
本功能支持:1)多变量同时转换;2)语言选择。
本功能可将变量作为底数,并指定幂以对变量进行指数转换。例如,对变量进行开方(0.5次幂)、平方(2次幂)或立方(3次幂)。
对于变量AAA,进行nnn次幂转换后的A′A'A′为:
A′=AnA^{'} = A^{n} A′=An
需要注意的是,对于部分幂次的计算要求变量中不存在负数(如0.5次幂),本功能不会主动进行平移校正。
假设B1为需要进行指数转换的变量,计划转换成3次幂。参考下图进行操作。
随后,SPSS生成以“EXP_”为前缀的新变量。
根据语言选择,该变量生成中文的变量标签。
16 对数
本功能支持:1)多变量同时转换;2)语言选择。
本功能可将变量作为真数,并指定底数以进行对数转换。
对于变量AAA,以nnn为底进行对数转换后的A′A'A′为:
A′=LognAA^{'} = \text{Log}_{n}A A′=LognA
需要注意的是,本功能要求变量中不存在负数,且不会主动进行平移校正。
假设B1为需要进行对数转换的变量,计划以10为底。参考下图进行操作。
随后,SPSS生成以“LOG_”为前缀的新变量。
根据语言选择,该变量生成中文的变量标签。
17 绝对值
本功能支持:1)多变量同时转换;2)语言选择。
本功能将对变量取绝对值。对于变量AAA,取绝对值后的A′A'A′为:
A′=∣A∣A^{'} = |A| A′=∣A∣
假设D1为需要取绝对值的变量。参考下图进行操作。
随后,SPSS生成以“ABS_”为前缀的新变量。
根据语言选择,该变量生成中文的变量标签。
18 四舍五入为整数
本功能支持:1)多变量同时转换;2)语言选择。
本功能将对变量进行精确到个位数的四舍五入。换言之,小数部分将被舍去。另外,小数点后一位的数值假如≥5,则向个位数进一。
假设D1为需要四舍五入到整数的变量。参考下图进行操作。
随后,SPSS生成以“RND_”为前缀的新变量。
根据语言选择,该变量生成中文的变量标签。
参考文献
Box, G. E. P., & Cox, D. R. (1964). An analysis of transformations. Journal of the Royal Statistical Society: Series B (Methodological), 26(2), 211–243. https://doi.org/10.1111/j.2517-6161.1964.tb00553.x
Cohen, J., Cohen, P., West, S. G., & Aiken, L. S. (2003). Applied multiple
regression/correlation analysis for the behavioral sciences (3rd Ed).
Routledge.
Pallant, J. (2011). SPSS survival manual:A step by step guide to data analysis using SPSS (4th Ed). Allen & Unwin.
Tabachnick, B. G., & Fidell, L. S. (2013). Using multivariate statistics (6th Ed). Pearson.
版本历史
版本 | 发布日期 | 更新内容 |
---|---|---|
1.0 | 2020.05.03 | DataTransformation 发布,中文名为“数据转换”。提供均值中心化、标准化、虚拟化、绝对值、缩放、二分转换、对数转换、指数转换等8个功能。 |
1.1 | 2020.05.05 | 增加旧版SPSS的虚拟化功能。 |
1.2 | 2020.05.08 | 增强选项和数字框的条件属性。 |
1.3 | 2020.05.10 | 增加反向编码功能。 |
1.4 | 2020.05.20 | 优化语法与页面布局,提供普通版与增强版,提供英文版。 |
2.0 | 2020.06.18 | 更改页面布局,增加“排秩”与“正态转换”功能。 |
2.1 | 2020.06.20 | 增加所有变量的求和及求平均值的功能。 |
3.1 | 2020.12.04 | 更名为“Transform”,修复部分Bug,优化语法,增加转换功能(如Box-Cox转换和Box-Tidwell交互项构造等),为大部分转换功能提供群组转换选项,提供变量标签和语言选择。 |
http://gruener.userpage.fu-berlin.de/spss-dialogs.htm ↩︎
https://www.ibm.com/support/pages/box-cox-transformations-regression ↩︎
Transform 3.1 用户手册(SPSS 的通用数据转换程序)相关推荐
- Transform 3.1:SPSS 的通用数据转换程序
今年5月3日,我发布了第一版数据转换插件.此后,随着我对SPSS语法的熟练度越来越高,插件也走过了多个版本,增加了许多功能.目前为止,插件的功能已经趋于完善,覆盖许多常用功能,应该在很长一段时间内都不 ...
- 晒晒我的通用数据访问层
注意:本文所介绍的框架已有新版本,点击后面链接即可阅读. [ClownFish:比手写代码还快的通用数据访问层] 今天来晒晒我的通用数据访问层. 写了很多年的数据库项目,数据访问嘛,一直是用业务实体+ ...
- 写一个通用数据访问组件
出处:http://www.csharp-corner.com willsound(翻译) 我收到过好多Email来问我如何用一个通用的数据提供者(data provider)在不失自然数据提供者(n ...
- 通用数据级别权限的框架设计与实现(4)-单条记录的权限控制
查看上篇文章通用数据级别权限的框架设计与实现(3)-数据列表的权限过滤,我们开始在原来的基础上实现单条权记录的权限控制. 相信前面的列表权限控制,很多系统都可以做到,但如何在上面列表的权限过滤中实现通 ...
- 通用数据级别权限的框架设计与实现(3)-数据列表的权限过滤
查看上篇文章通用数据级别权限的框架设计与实现(2)-数据权限的准备工作,我们开始数据列表的权限过滤. 原理:我们在做过滤列表时,根据用户权限自动注入到相关SQL中,实现相关过滤,如果拥有全部权限,则不 ...
- ASP.NET2.0通用数据访问类
.NET框架自带的数据提供器包括SQLServer(System.Data.SqlClient).Oracle (System.Data.Oracleclient).OLEDB(System.D ...
- 【业务建模_2】通用数据工具
[业务建模_2]通用数据工具 背景 在公司做数据工作会接触很多相关工具,这里会汇总一些核心并更理想化的工具. 工具汇总 1.打点平台 module,op,参数数组(s0-s5),常用参数,[实际打点位 ...
- Sbo通用数据选择功能的实现
本文著作权属于江湖浪子@IT,任何人未经作者本人批准,不得转载. 在Sbo Addon开发中,经常为了业务实现,需要从当前的业务数据库中列举出符合条件信息,供业务操作人员进行选择,并且将选择之后的 ...
- EF通用数据层封装类(支持读写分离,一主多从)
浅谈orm 记得四年前在学校第一次接触到 Ling to Sql,那时候瞬间发现不用手写sql语句是多么的方便,后面慢慢的接触了许多orm框架,像 EF,Dapper,Hibernate,Servic ...
最新文章
- DIV+CSS一行两列布局
- Android沉浸式模式状态栏(二)
- OpenCv2 学习笔记(1) Mat创建、复制、释放
- Python排序算法(二) 快速排序、希尔排序、归并排序
- 你可能学了假流程图,三步教会你绘制大厂流程图
- Silverlight 自定义表格 转
- aesmiyao php_PHP实现的AES 128位加密算法示例
- AP聚类算法(Affinity propagation Clustering Algorithm )
- 【3】基于深度神经网络的脑电睡眠分期方法研究(数据集分类)
- 铁路CAD设计辅助软件V2.0
- 帆软大数据自定义分页
- X1000对于音频播放控制部分的翻译
- NLTK使用方法总结
- Kotlin读写Excel文件
- 并行与串行传输,串行高速传输
- 黑苹果MAC好处与坏处
- 【精益生产】精益生产十大工具
- engish 800
- 时间管理 |《小强升职记》学习笔记 | Part1
- 计算机软考具体有哪几方面,计算机软考全国有哪些常用考点呢
热门文章
- windows提权常用系统漏洞与对应的补丁编号
- HDU-4745-Two Rabbits
- LeetCode | 575. Distribute Candies
- Endgame P.O.O
- 为什么大家都在用在线客服系统?
- Windows企业版2019安装,和显示无法打开所需文件d:\sources\install.wim.”解决办法
- 终于等到你,最强 IDE Visual Studio 2017 正式版发布(附详细介绍与下载地址)
- Java免费学习网站
- dd 命令的使用方法
- paddlespeech 语音识别 web流服务部署(Streaming Speech Recognition)