小编Atl*_*as7的帖子

如何在SAS中使用布尔数据类型?

在许多主流编程语言中,您可以使用布尔数据类型(例如,值可以是true或者false) - 来表示二进制"真/假".

SAS中也有布尔数据类型吗?

例如,在此代码中,变量is_fruit旨在表示二进制true(1)或false(0)情况.由于我不知道任何布尔数据类型(或length类型),我使用数字解决这个问题:

data is_fruit;
    length fruit_name $ 40 is_fruit 8.;
    input fruit_name $ is_fruit;
    datalines;
apple 1
orange 1
car 0
tree 0
chicken 0
peach 1
mango 1
human 0
;

run;
Run Code Online (Sandbox Code Playgroud)

输出:

在此输入图像描述

在此输入图像描述

对我来说,这不是一个非常优雅的数据结构,因为变量is_fruit实际上是一个布尔数据类型(不是数字或字符).所以我的问题又来了......

上面是否有布尔数据类型(或length类型)is_fruit

boolean sas data-structures

7
推荐指数
2
解决办法
7553
查看次数

如何从SAS Enterprise Guide中找到SAS版本?

在我以前的工作场所,我可以访问基本SAS(直接在服务器上以交互方式运行SAS),我可以通过发出代码轻松找到当前的SAS版本(从SAS日志中) proc setinit; run;

在我的新工作场所,没有基础SAS - 仅限企业指南.我尝试运行相同的代码,但SAS版本没有出现在SAS日志中.

我想从Enterprise Guide中轻松找到服务器上运行的SAS版本.这可能吗?如果是这样,怎么样?

sas

6
推荐指数
2
解决办法
5058
查看次数

如何防止意外覆盖Python内置函数?

我知道命名一个与Python内置函数同名的变量是个坏主意.但是如果一个人不知道要避免的所有"禁忌"变量名称(例如list,set等等),是否有办法让Python至少阻止你(例如通过错误消息)破坏内置函数?

例如,下面的命令行4允许我覆盖/损坏内置函数,set()而不会阻止我/产生错误.(这个错误一直没有被注意到,直到它被set()调用到下面的命令行6.).理想情况下,我希望Python在命令行4停止我(而不是等到命令行6).

注意:以下执行是在Python 2.7(iPython)控制台中执行的.(Anaconda Spyder IDE).

In [1]: myset = set([1,2])

In [2]: print(myset)
set([1, 2])

In [3]: myset
Out[3]: {1, 2}

In [4]: set = set([3,4])

In [5]: print(set)
set([3, 4])

In [6]: set
Out[6]: {3, 4}

In [7]: myset2 = set([5,6])
Traceback (most recent call last):

  File "<ipython-input-7-6f49577a7a45>", line 1, in <module>
    myset2 = set([5,6])

TypeError: 'set' object is not callable
Run Code Online (Sandbox Code Playgroud)

背景:我正在遵循HackerRank Python Set Challenge的教程.本教程涉及创建一个变量valled set(与Python内置函数同名).我逐行完成了教程,并得到了"set object …

python python-2.7

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

除了使用 2 个空格作为缩进外,如何在 PyCharm IDE 中启用 PEP8 检查?

最近在使用 TensorFlow Python 存储库时,我一直在使用 PyCharm IDE。TensorFlow遵循 PEP8 Python 风格指南,除了使用 2 个空格作为 indents

默认情况下,在 PyCharm IDE 中,我启用了 PEP8 检查以使我的代码遵循 PEP8 样式约定。一个不受欢迎的副作用是现在我在 PyCharm 编辑器中到处都有警告,标记所有缩进(2 个空格而不是 4 个空格)。

如果我禁用 PEP8 检查,所有警告都会在不再进行 PEP8 检查(这是可取的)的权衡下消失。

有没有办法在 PyCharm 编辑器中启用完整的 PEP8 检查,但忽略 2 空格缩进?

这是 PEP8 警告的示例(关于缩进空格应该是 4 而不是 2):

在此处输入图片说明

这是 PyCharm 首选项页面的快照,位于 PEP8 检查部分下(看起来它是开/关 - 除非我遗漏了什么):

在此处输入图片说明

更新

两个不错的选择(用于不同目的):

  • 如果您想在 PyCharm 范围内忽略警告,建议的“重复问题”链接很有效。(在首选项中完成)
  • 如果您只想忽略当前文件/项目级别的警告(而不影响其他项目),则接受的答案很有效。

python ide pep8 pycharm tensorflow

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

如何有效地从 SAS 更新 Oracle 表?

我试图解决的问题:

我有一个work.testData包含 8 列和大约 100 万行的 SAS 数据集(在工作库中)。所有列都是文本(即没有数字数据)。此 SAS 数据集的文件大小约为 100 MB。我的目标是将整个 SAS 数据集解析为 Oracle。即有点像从 SAS 平台到 Oracle 平台的 SAS 数据集的“复制和粘贴”。这背后的基本原理是,每天,Oracle 中的这个表都会被 SAS 中的表“替换”,这将启用下游 Oracle 流程。

我解决问题的方法:

Oracle 中的一次性初始设置:

  1. 在 Oracle 中,我创建了一个表testData,其表结构与 SAS dataset 几乎相同testData。(即相同的表名、相同的列数、相同的列名等)。

不断重复的过程:

  1. 在 SAS 中,执行 SQL 传递以截断 ora.testData(即在保留表结构的同时删除所有行)。这确保 ora.testData 在从 SAS 插入之前为空。
  2. 在 SAS 中,用于将 Oracle 数据库指定为 SAS 库(称为 ora)的 LIBNAME 语句。因此,我可以“查看”Oracle 中的内容并从 SAS 执行读取/更新。
  3. 在 SAS 中,一个 PROC SQL 过程将 SAS 数据集 work.testData 中的数据“插入”到 Oracle 表 ora.testData 中。

示例代码 …

oracle sas

4
推荐指数
1
解决办法
6946
查看次数

如何在SAS Enterprise Guide中列出所有可用的用户定义宏?

在我的主要代码中说我有这个代码块:

%macros hi5;
 %put hi five;
%mend;

%macros helloworld;
  %put hello world;
%mend;
Run Code Online (Sandbox Code Playgroud)

在SAS Enterprise Guide中,我如何显示这样的内容?(通过日志或通过SAS表)

These are the user defined user macros:

hi5
hello world
Run Code Online (Sandbox Code Playgroud)

(目的是让用户能够知道他们已经可以使用哪些宏).

注意:%put _ALL_唯一列出所有宏变量,而不是宏(例如用%macros and %mend.构建.)

sas enterprise-guide

4
推荐指数
1
解决办法
2418
查看次数

是否可以在Cloud9 IDE上显示选项卡和空格?

在Sublime Text上,你可以看到一个标签(作为一条线)和空格(作为一个点) - 根据这个StackOverflow论坛.

请问Cloud9 IDE有类似的东西吗?

例如

在此输入图像描述

非常感谢!

cloud9-ide

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

Rails查询中的`<>`是什么意思?

我很难搜索符号的含义,例如<>在rails查询中的含义.那<>意味着什么?(或者一般来说,你如何谷歌搜索类似的东西<>?)

果壳

用简单的英语,以下查询是什么意思?

查询1:

@profile.socials.all.where.not(kind: [2, 3])
Run Code Online (Sandbox Code Playgroud)

查询2:

@profile.socials.where("kind <> ?", "[:facebook, :linked_in]")
Run Code Online (Sandbox Code Playgroud)

注1:kind数据类型enum如下所示:

enum kind: [ :twitter, :google_plus, :facebook, :linked_in, :skype, :yahoo ]
Run Code Online (Sandbox Code Playgroud)

注意2:两个查询在控制台窗口中产生相同的结果.我相信这两个查询都旨在where对子集数据进行查询(使用not-equal-to运算符).我只是没有知道如何解释它的线索<>.

详细Rails应用程序

这些是我的模特:

型号Profile:

class Profile < ActiveRecord::Base
  has_many :socials, as: :sociable, dependent: :destroy
  accepts_nested_attributes_for :socials, allow_destroy: true
end
Run Code Online (Sandbox Code Playgroud)

型号Social:

class Social < ActiveRecord::Base
  enum kind: [ :twitter, :google_plus, :facebook, :linked_in, :skype, :yahoo ]
  belongs_to :sociable, polymorphic: true …
Run Code Online (Sandbox Code Playgroud)

sql ruby-on-rails

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