小编CDs*_*ace的帖子

熊猫菲尔纳模式

我有一个数据集,其中有一个名为Native Country的列包含30000记录.有些人缺少代表,NaN所以我想用它来填补它mode().我写了这样的东西:

data['Native Country'].fillna(data['Native Country'].mode(), inplace=True)
Run Code Online (Sandbox Code Playgroud)

但是,当我计算缺失值时:

for col_name in data.columns: 
    print ("column:",col_name,".Missing:",sum(data[col_name].isnull()))
Run Code Online (Sandbox Code Playgroud)

它仍然NaN为列原生国家提供相同数量的值.

python pandas fillna

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

has_many:通过has_and_belongs_to_many关联

我试图在Ruby on Rails项目中执行以下操作:

class FoodItem < ActiveRecord::Base
  has_and_belongs_to_many :food_categories
  has_many :places, :through => :food_categories
end

class FoodCategory < ActiveRecord::Base
  has_and_belongs_to_many :food_items
  belongs_to :place
end

class Place < ActiveRecord::Base  
  has_many :food_categories
  has_many :food_items, :through => :food_category
end
Run Code Online (Sandbox Code Playgroud)

但调用实例方法some_food_item.places会给我以下错误:

ActiveRecord::StatementInvalid: PGError: ERROR:  column 
food_categories.food_item_id does not exist
LINE 1: ...laces".id = "food_categories".place_id    WHERE (("food_cate...

: SELECT "places".* FROM "places"  INNER JOIN "food_categories" ON "places".id = "food_categories".place_id    WHERE (("food_categories".food_item_id = 1))
Run Code Online (Sandbox Code Playgroud)

这很有道理 - 因为FoodItem和FoodCategory上的HABTM我有一个名为的映射表food_categories_food_items.

我有什么做的就是some_food_item.places要正确对待地方了通过映射表,而不是寻找一个food_item_id在 …

activerecord ruby-on-rails

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

有没有办法以编程方式将ApartmentState设置为STA?

我在PowerShell中使用GUI,在点击某些组合框时我会抛出错误.

抛出错误后,我可以放下组合框列表并看到它的内容,但是如果我转移到同一个数据网格视图上的另一个combox,我会在看到下拉列表之前得到相同的初始错误.

我在TechNet PowerShell论坛中发布了这个,并获得了在单线程单元(STA)中运行GUI所需的答案.默认情况下,PowerShell在MTA中运行,但您可以-STA在调用时使用该开关覆盖此(在v2.0中)powershell.exe.

但是,我的GUI只是调用默认的PowerShell应用程序(在MTA模式下),所以我的问题是,有没有办法以编程方式从我的GUI /脚本内部设置apartmentstate?

如果没有,我的下一次尝试将是检测公寓状态并尝试从我的gui的初始加载重新启动我的GUI,例如:

powershell.exe -STA myguiprog.ps1
Run Code Online (Sandbox Code Playgroud)

编辑:

所以我的工作方式有效:

if ([threading.thread]::CurrentThread.GetApartmentState() -eq "MTA") {
    & $env:SystemRoot\system32\WindowsPowerShell\v1.0\powershell.exe -sta $MyInvocation.ScriptName
}
Run Code Online (Sandbox Code Playgroud)

.net powershell sta

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

用grep远程日志文件尾

我有这个代码来尾随远程日志文件:

def do_tail( session, file )
  session.open_channel do |channel|
  channel.on_data do |ch, data|
    puts "[#{file}] -> #{data}"
  end
  channel.exec "tail -f #{file}" 
end

Net::SSH.start("host", "user", :password => "passwd") do |session|
  do_tail session, "/path_to_log/file.log"
  session.loop
Run Code Online (Sandbox Code Playgroud)

我想只检索带有ERROR字符串的行file.log,我试图调用tail -f #{file} | grep ERROR但没有成功.

ruby logging grep tail

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

如何从字符串中删除字符的最后一个实例

我正在使用StringBuilder构建一个字符串.

StringBuilder Q = new StringBuilder();
Q.Append("INSERT INTO ");
Q.Append(_lstview_item);
Q.Append(" VALUES");
Q.Append("("); 
for (i = 0; i < col_no; i++)
{
    Q.Append("'");
    Q.Append(col_value[i]);
    Q.Append("'");
    Q.Append(",");
} 
Q.Append(")");
string query = Q.ToString();
Run Code Online (Sandbox Code Playgroud)

但是,","我的字符串结束了.我试过用

string query = ext.Substring(0, ext.LastIndexOf(",") + 1);
Run Code Online (Sandbox Code Playgroud)

去除剩余",",但这也删除了")".

如何仅删除最后一个逗号?

实际结果:INSERT INTO .... VALUES('1','2','3',)

期望的结果:INSERT INTO .... VALUES('1','2','3')

c# asp.net string trim character

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

获取Windows服务启动类型?

System.ServiceProcess命名空间中,是否有任何类型的枚举或其他直接成员来确定服务的启动类型(自动,延迟自动,按需,禁用)ServiceController

我的想法是使用.NET框架类库的该命名空间(或其他命名空间)的可用成员来确定该事物,而不是查看操作系统注册表或WMI以获取服务的启动类型,因为我可以这样做,我我只是问.NET框架是否公开了一种更简单的方法来确定那件事.

用VB.Net编写的伪代码,但我也可以管理C#方法:

Public Shared Function GetStartType(ByVal svcName As String) As ServiceControllerStatus

    Dim svc As ServiceController = (From service As ServiceController In ServiceController.GetServices()
         Where service.ServiceName.Equals(svcName, StringComparison.OrdinalIgnoreCase)
        ).FirstOrDefault

    If svc Is Nothing Then
        Throw New ArgumentException("Any service found with the specified name.", "svcName")
    Else
        Using svc
            ' Note that StartTypeEnumValue does not exists.
            Return svc.StartTypeEnumValue
        End Using
    End If

End Function
Run Code Online (Sandbox Code Playgroud)

.net vb.net windows-services servicecontroller

6
推荐指数
3
解决办法
8069
查看次数

Python 日志记录创建空文件

我正在使用 python 的日志记录工具。如果有要记录的内容,我只想创建一个日志文件。换句话说,如果没有要记录的内容,则不应创建任何日志文件。

立刻

logging.basicConfig( filename=filename_log, level=logging.DEBUG, mode='w')
Run Code Online (Sandbox Code Playgroud)

运行时,会创建一个空的日志文件。我尝试在退出之前删除它:

if ( os.stat( filename_log ).st_size == 0 ): os.remove( filename_log)
Run Code Online (Sandbox Code Playgroud)

这给出了一条错误消息:

WindowsError: [Error 32] The process cannot access the file because it is being used by another process
Run Code Online (Sandbox Code Playgroud)

所以我想之前应该做一些其他的事情。

那么,有没有办法在不编写自己的日志记录程序的情况下不生成空日志文件?

简而言之:

logging.basicConfig( filename=filename_log, level=logging.DEBUG, mode='w')
logging.debug('This message should go to the log file')
Run Code Online (Sandbox Code Playgroud)

确实记录正确,但如果没有要记录的内容,则会提供一个空文件。和

with open( filename_log, 'w') as logfile:
    logging.basicConfig( stream=logfile, level=logging.DEBUG)
Run Code Online (Sandbox Code Playgroud)

给出: ValueError: I/O operation on closed file

python logging

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

如何在路由处理程序中使用`pre` - hapi.js

我必须在路线中使用pre来调用方法.我正在使用hapi-request.我试图在路由声明中使用pre,但是我收到了一个错误.我错过了什么?

我原来的路线:

server.route({ 
    method: 'POST', 
    path: '/searchUser',  
    config: User.searchUser
})
Run Code Online (Sandbox Code Playgroud)

使用Pre

server.route({ 
    method: 'POST', 
    path: '/searchUser',  
    pre: validateUser, 
    config: User.searchUser
})
Run Code Online (Sandbox Code Playgroud)

错误

Error: Invalid route options (/searchUser) {
  "method": "POST",
  "path": "/searchUser",
  "config": {}
}
?[31m
[1] "pre" is not allowed?[0m   
Run Code Online (Sandbox Code Playgroud)

routes node.js hapijs

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

.whl不是有效的wheel文件名,在C:\中存储失败的调试日志

我无法通过pip安装轮盘文件.

  1. 我打开命令提示符
  2. 在提示中写下以下内容

    C:/Python34/Scripts/pip install C:/Users/Hamsa/Downloads/pygame.whl

  3. 然后我收到这条消息

    pygame.whl is not a valid wheel filename. Storing debug log for failure in C:\Users\Hamsa\pip\pip.log

我不知道该做什么,我需要你的帮助.

python pip python-wheel

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

检测断开用户信号器

我需要检测用户何时使用信号器连接和断开连接。

我有这两种集线器方法:

public void Say(string message)
{
    Trace.WriteLine(message + " - " + Context.ConnectionId);
}

public void Goodbye(string message)
{
    Trace.WriteLine(message + " - " + Context.ConnectionId);
}
Run Code Online (Sandbox Code Playgroud)

我已经实现了Say负责检测连接的方法,如下所示:

$.connection.hub
            .start()
            .done(function () {
                hub.server.say("Hello SignalR");
});
Run Code Online (Sandbox Code Playgroud)

但是我如何检测断开连接?

c# asp.net-mvc websocket signalr

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