小编jam*_*iet的帖子

从spark数据帧中取n行并传递给toPandas()

我有这个代码:

l = [('Alice', 1),('Jim',2),('Sandra',3)]
df = sqlContext.createDataFrame(l, ['name', 'age'])
df.withColumn('age2', df.age + 2).toPandas()
Run Code Online (Sandbox Code Playgroud)

工作正常,做它需要的东西.假设我只想显示前n行,然后调用toPandas()返回pandas数据帧.我该怎么做?我无法调用,take(n)因为它不会返回数据帧,因此我无法将其传递给toPandas().

换句话说,如何从数据帧中获取前n行并调用toPandas()结果数据帧?想不到这很难但我无法弄清楚.

我正在使用Spark 1.6.0.

python apache-spark-sql spark-dataframe

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

参考用于CI构建的Microsoft.VisualStudio.QualityTools.UnitTestFramework

我在VS2015 RC中创建了一个C#测试项目.它在本地构建,但是当我尝试构建我们的CI构建服务器(TeamCity)时,它会失败并出现错误:

UnitTest1.cs(2,17):错误CS0234:命名空间"Microsoft"中不存在类型或命名空间名称"VisualStudio"(您是否缺少程序集引用?)[D:\ BuildAgent\work\e486bf18e454d0c2\dh. PSP.Coordinator.Api.Tests\dh.PSP.MetadataService.Api.Tests.csproj] UnitTest1.cs(9,10):错误CS0246:找不到类型或命名空间名称'TestMethod'(你是否错过使用指令或程序集引用?)[D:\ BuildAgent\work\e486bf18e454d0c2\dh.PSP.Coordinator.Api.Tests\dh.PSP.MetadataService.Api.Tests.csproj] UnitTest1.cs(9,10):错误CS0246 :找不到类型或命名空间名称'TestMethodAttribute'(您是否缺少using指令或程序集引用?)[D:\ BuildAgent\work\e486bf18e454d0c2\dh.PSP.Coordinator.Api.Tests\dh.PSP. MetadataService.Api.Tests.csproj] UnitTest1.cs(6,6):错误CS0246:找不到类型或命名空间名称'TestClass'(您是否缺少using指令或程序集引用?)[D:\ BuildAgent \工作\ e486bf18e454d0c2\dh.PSP.Co ordinator.Api.Tests\dh.PSP.MetadataService.Api.Tests.csproj] UnitTest1.cs(6,6):错误CS0246:找不到类型或命名空间名称'TestClassAttribute'(您是否缺少using指令或程序集引用?)[D:\ BuildAgent\work\e486bf18e454d0c2\dh.PSP.Coordinator.Api.Tests\dh.PSP.MetadataService.Api.Tests.csproj]

显然这是因为包含这些命名空间的程序集(Microsoft.VisualStudio.QualityTools.UnitTestFramework)不在构建服务器上,在我的本地计算机上它位于C:\ Program Files(x86)\ Microsoft Visual Studio 12.0\Common7\IDE\PublicAssemblies\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll.我想我可以将程序集复制到我的解决方案中,以便它成为代码库的一部分,但手动移动文件感觉就像是一个不优雅的黑客.我在nuget周围搜索并找到了http://www.nuget.org/packages/Microsoft.VisualStudio.QualityTools.UnitTestFramework/,我认为这样可以解决问题,但安装该软件包失败了:

安装包:无法安装包'Microsoft.VisualStudio.QualityTools.UnitTestFramework 11.0.50727.1'.您正在尝试将此软件包安装到以".NETFramework,Version = v4.5.2"为目标的项目中,但该软件包不包含任何与该框架兼容的程序集引用或内容文件

解决这个问题的最佳选择是什么?我很惊讶在VS2015中创建一个测试项目并没有自动包含我需要的所有依赖项,尽管我可能是天真的(我是一个刚刚起步的点网).

c# unit-testing visual-studio vs-2015-preview

26
推荐指数
2
解决办法
1万
查看次数

使用T4时记录到输出窗口

我正在使用T4进行代码生成.它运行良好,但我想做的一件事是一些简单的日志记录,如果这只是采取将消息抛出到输出窗口的形式,我很高兴.

有谁知道这样做的方法?

或者,我知道存在用于将内容转储到错误列表窗格的Error()和Warning()方法,是否有类似的转储信息消息?

.net t4

12
推荐指数
3
解决办法
3905
查看次数

了解PowerShell工作流中的功能范围

将以下内容复制并粘贴到新的Powershell ISE脚本中,然后点击F5:

workflow workflow1{
    "in workflow1"
    func1
}
function func1 {
    "in func1"
    func2
}
function func2 {
    "in func2"
}
workflow1
Run Code Online (Sandbox Code Playgroud)

我得到的错误是:

术语"func2"不被识别为cmdlet,函数,脚本文件或可操作程序的名称

我不明白这一点.为什么func1会在范围内而不是func2?任何帮助非常感谢.TIA.

powershell powershell-workflow

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

我可以告诉 mypy 表达式不会返回可选值吗?

我有以下代码:

def extract_table_date(bucket_path: str) -> str:
    event_date = re.search(r"date=([^/]+)", bucket_path)
    return event_date.group(1)[0:10].replace("-", "")
Run Code Online (Sandbox Code Playgroud)

mypy 在最后一行抛出错误:

“Optional[Match[str]]”的“None”项没有属性“group”

我想我可以通过为 分配一个类型来解决这个问题event_date,我可以:

from typing import Match

def extract_table_date(bucket_path: str) -> str:
    event_date: Match = re.search(r"date=([^/]+)", bucket_path)
    return event_date.group(1)[0:10].replace("-", "")
Run Code Online (Sandbox Code Playgroud)

但 mypy 现在在函数的第一行抛出另一个错误:

赋值中的类型不兼容(表达式的类型为“Optional[Match[Any]]”,变量的类型为“Match[Any]”)

我真的不知道如何通知 mypy 结果不是可选的,但尽管如此,我还是遵循了可选类型和 None 类型的建议,添加了断言:

from typing import Match

def extract_table_date(bucket_path: str) -> str:
    assert bucket_path is not None
    event_date: Match = re.search(r"date=([^/]+)", bucket_path)
    return event_date.group(1)[0:10].replace("-", "")
Run Code Online (Sandbox Code Playgroud)

但 mypy 仍然引发相同的错误。

我尝试通过更改定义的类型来修复event_date

from typing import Match, …
Run Code Online (Sandbox Code Playgroud)

python mypy python-typing

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

如何在gitlab CI管道中推送到仓库?

在我的CI管道中,我正在生成一个public/graph.png可视化我的代码某些方面的工件。在以后的步骤中,我想将其从CI管道中提交给仓库。这是相关的部分.gitlab-ci.yml

commit-graph:
  stage: pages
  script:
    - git config user.email "cipipeline@example.com"
    - git config user.name "CI Pipeline"
    - cd /group/project
    - mv public/graph.png .
    - git add graph.png
    - git commit -m "committing graph.png [ci skip]"
    - echo $CI_COMMIT_REF_NAME
    - git push origin HEAD:$CI_COMMIT_REF_NAME
Run Code Online (Sandbox Code Playgroud)

当管道在gitlab中运行时,它失败并显示:

$ git config user.email“ cipipeline@dhgitlab.dunnhumby.co.uk”
$ git config user.name“ CI管道”
$ cd / group / project
$ mv public / graph.png。
$ git add graph.png
$ git commit -m“ committing graph.png [ci …

gitlab gitlab-ci

11
推荐指数
6
解决办法
3034
查看次数

GCP IAM绑定/成员的“权威”和“权威”是什么意思

我试图在https://www.terraform.io/docs/providers/google/r/google_service_account_iam.html上了解GCP terraform 提供程序之间google_service_account_iam_binding和之间的区别。google_service_account_iam_member

我知道 google_service_account_iam_binding 用于向成员列表授予角色,而 google_service_account_iam_member 用于向单个成员授予角色,但是我不清楚这些定义中“权威”和“非权威”的含义:

google_service_account_iam_binding:给定角色的权威。更新 IAM 策略以向成员列表授予角色。服务帐号的 IAM 策略中的其他角色将被保留。

google_service_account_iam_member:非权威。更新 IAM 策略以向新成员授予角色。保留服务帐户角色的其他成员。

谁能为我详细说明一下?

terraform terraform-provider-gcp

10
推荐指数
2
解决办法
815
查看次数

SQL Server 2014:SSISDB与MSDB进行包部署

我目前正在从SQL Server 2008R2升级到2014(两者都是Enterprise).有大量的SSIS作业正在生产中,需要迁移.我正试图了解如何管理未来的SSIS工作.

在2008R2中,我总是使用BIDS将软件包部署到MSDB.然后通过SQL Server控制所有权限.

在2014年,我看到您仍然可以保存到文件系统或MSDB,但现在存在您作为Integration Services目录创建的SSISDB.通过添加简单的变量访问甚至环境变量,这种方法显然可以提供更大的灵活性.

在2014年将SSIS包部署到SSISDB现在是部署和管理SSIS项目的最佳实践方式,而不是部署到MSDB?我还能管理权限吗?当我备份SSISDB时,是否备份了所有部署的项目(就像以前一样使用MSDB)?最后,当我通过SQL代理安排这些软件包时,它们的行为是否仍然相同,其中SQL代理服务帐户和作业所有者的权限在运行时确定SSIS包的权限?

非常感谢任何可以提供帮助的人.我整天都在微软的网站上,虽然文档非常有用,但实际上并没有回答这些问题的具体问题.

sql-server ssis bids sql-server-2014

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

Install-PackageProvider无法识别为cmdlet,函数,脚本文件或可运行程序的名称

我正在关注PowerShell Gallery入门,其中指出PowerShellGet模块存在于Windows 10中(我正在使用它 - build 14721).要确认,我正在运行PowerShell v5:

>$PSVersionTable

Name                           Value
----                           -----
PSVersion                      5.0.14271.1000
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.14271.1000
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
Run Code Online (Sandbox Code Playgroud)

PowerShell库入门指出:

PowerShellGet还要求NuGet提供程序与PowerShell库一起使用.如果NuGet提供程序不在以下位置之一,则会在首次使用PowerShellGet时自动安装NuGet提供程序:•$ env:ProgramFiles\PackageManagement\ProviderAssemblies
•$ env:LOCALAPPDATA\PackageManagement\ProviderAssemblies

我在这些地方没有任何东西:

>ls $env:LOCALAPPDATA\PackageManagement\ProviderAssemblies    
>ls $env:ProgramFiles\PackageManagement\ProviderAssemblies
ls : Cannot find path 'C:\Program Files\PackageManagement\ProviderAssemblies' because it does not exist.
At line:1 char:1
+ ls $env:ProgramFiles\PackageManagement\ProviderAssemblies
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (C:\Program File...viderAssemblies:String) [Get-ChildItem], ItemNotFoundException
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand
Run Code Online (Sandbox Code Playgroud)

开始使用PowerShell Gallery然后说明:

或者,您可以运行Install-PackageProvider -Name NuGet …

powershell powershellget

7
推荐指数
3
解决办法
1万
查看次数

如何使用键盘快捷键在 Visual Studio 代码中切换终端?

我希望能够使用键盘快捷键在 VSCode 中的终端窗格之间切换。我在 Mac 上。

我打开了键盘快捷键(Commandkey+K、Commandkey+S)并找到了workbench.action.terminal.focusNextPane设置:
在此输入图像描述

它非常清楚地说明了键盘快捷键应该是什么(选项+命令+向下箭头或选项+命令+向左箭头),但这些都不起作用。当焦点位于编辑器中并且我想在其中的窗格之间切换时,它们确实可以工作,但当焦点位于终端时,它们不起作用。

不知道我做错了什么,但我希望我错过了一些明显的事情。谁能解释一下吗?

visual-studio-code

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