小编ago*_*old的帖子

操作'='的非法混合排序(utf8_unicode_ci,IMPLICIT)和(utf8_general_ci,IMPLICIT)

MySql上的错误消息:

Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation '='
Run Code Online (Sandbox Code Playgroud)

我已经经历了其他几个帖子,但无法解决这个问题.受影响的部分与此类似:

CREATE TABLE users (
    userID INT UNSIGNED NOT NULL AUTO_INCREMENT,
    firstName VARCHAR(24) NOT NULL,
    lastName VARCHAR(24) NOT NULL,
    username VARCHAR(24) NOT NULL,
    password VARCHAR(40) NOT NULL,
    PRIMARY KEY (userid)
) ENGINE = INNODB CHARACTER SET utf8 COLLATE utf8_unicode_ci;

CREATE TABLE products (
    productID INT UNSIGNED NOT NULL AUTO_INCREMENT,
    title VARCHAR(104) NOT NULL,
    picturePath VARCHAR(104) NULL,
    pictureThumb VARCHAR(104) NULL,
    creationDate DATE NOT NULL,
    closeDate DATE NULL,
    deleteDate DATE NULL, …
Run Code Online (Sandbox Code Playgroud)

mysql stored-procedures

142
推荐指数
4
解决办法
22万
查看次数

在pycharm中使用matplotlib时出错"无法找到或加载Qt平台插件窗口"

我在PyCharm中使用matplotlib时收到错误"无法找到或加载Qt平台插件窗口".

我怎么解决这个问题?

在此输入图像描述

python pycharm python-3.x

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

如何在 Python 脚本中将 cProfile.Profile() 的输出保存到 *.prof 文件

嗨,我知道使用命令行方法来分析 python 脚本,如下所示。

python -m cProfile -o program.prof my_program.py

但是,我正在使用 cProfile 模块分析 Python 中的特定代码段,如下所示。

import cProfile, pstats, io
pr = cProfile.Profile()
pr.enable()
# ... do something ...
pr.disable()
s = io.StringIO()
sortby = 'cumulative'
ps = pstats.Stats(pr, stream=s).sort_stats(sortby)
ps.print_stats()
print(s.getvalue())
Run Code Online (Sandbox Code Playgroud)

如何pr将输出保存cProfile.Profile()*.profile文件而不是pstats.Stats()用于分析和打印分析结果。因此,我可以使用 SnakeViz 或类似实用程序来直观地分析统计数据。

python profiling cprofile snakeviz

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

ggplot2垂直线未插入所需位置

我想要一个时间序列图,在某个时间点插入一条垂直线.我的数据从1990年1月开始.当我使用ggplot2时,垂直线被推到范围之外,而不是在期望的点.

下面的代码将显示正在发生的事情,但会显示随机生成的数据.任何帮助表示赞赏!

library(ggplot2)
library(zoo)
library(reshape)
library(epitools)

##Generate Price Variables
NormalPrices = as.data.frame(matrix(rnorm(300*3, mean=50, sd=10), ncol=3))

rownames(NormalPrices) = paste("sample", 1:300, sep="")

colnames(NormalPrices) = paste("Price", 1:3, sep="")


##Assign as Time Series Data
datt=ts(NormalPrices,start=c(1990,1), frequency=12)

View(datt)

time1=time(datt)

time1=as.month(time1)

time1=time1$dates

datt=melt(data.frame(time1, datt),id.vars="time1")

## Plot
P=ggplot((datt), aes(time1, value)) + geom_line() +facet_grid(variable ~ .)+ ggtitle("Level Prices")


P + geom_vline(xintercept =  2001-04-01,colour="black", linetype = "longdash")+ theme_bw()+ theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank(), 
    panel.background = element_blank(), axis.line = element_line(colour = "black"))
Run Code Online (Sandbox Code Playgroud)

情节

plot r ggplot2

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

Spring + TestNG没有事务性回滚

我正在使用TestNG 6.9.9构建回归测试环境.但遇到一个我在使用JUnit时从未遇到过的问题.在我看来,当完成每个测试用例时,如果测试方法在与他们调用的相同的事务上下文中运行,则每个数据的更改将默认自动回滚.但似乎这不是事实,我不知道我的代码中是否有任何错误.请帮帮我.pom.xml中的属性,表示框架的版本

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <springframework.version>4.2.4.RELEASE</springframework.version>
    <hibernate.version>4.3.11.Final</hibernate.version>
<testng.version>6.9.9</testng.version>
</properties>
Run Code Online (Sandbox Code Playgroud)

显然,它们都是最新的.

我的考试班:

package com.noahwm.hkapp.api;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.annotation.Rollback;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.testng.AbstractTestNGSpringContextTests;
import org.springframework.test.context.transaction.TransactionConfiguration;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.testng.Assert;
import org.testng.annotations.Test;

import com.noahwm.hkapp.api.db.dao.AppUserDao;
import com.noahwm.hkapp.api.db.model.AppUser;
import com.noahwm.hkapp.api.service.AppUserService;

@ContextConfiguration(locations = { "classpath:applicationContext-test.xml" })
public class AppUserServiceTestNGTest extends AbstractTestNGSpringContextTests {

  @Autowired
  private AppUserService appUserService;

  @Test
  @Rollback
  @Transactional
  public void testApp() {
    AppUser appUser = new AppUser();
    appUser.setAge(10);
    appUser.setGender("F");
    appUser.setMobilePhone("13219201034");
    appUser.setName("HKAPP Test");
    appUserService.createUser(appUser);
    String appUserId = appUser.getId();
    Assert.assertNotNull(appUserId);
  }
}
Run Code Online (Sandbox Code Playgroud)

创建实体实例,而不是调用createUser()将其保存到DB.根据我在JUnit中所做的,即使我没有将@Rollback注释放在测试方法的前面,数据也会自动回滚.

AppUser的结构是:

package com.noahwm.hkapp.api.db.model; …
Run Code Online (Sandbox Code Playgroud)

java testng spring transactions maven

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

Padre 抱怨 SQLite 数据库问题

我从 perl 开始,想在 Ubuntu 14.04 上安装 IDE Padre这个问题的答案表明我可以简单地使用apt-get

sudo apt-get install padre
Run Code Online (Sandbox Code Playgroud)

我也尝试安装它:

sudo cpan Padre
Run Code Online (Sandbox Code Playgroud)

指示在这里

但是,当我运行时padre,它给了我以下错误:

DBD::SQLite::db selectall_arrayref failed: attempt to write a readonly database at (eval 1905) line 41.
Perl exited with active threads:
    1 running and unjoined
    0 finished and unjoined
    0 running and detached
Run Code Online (Sandbox Code Playgroud)

当我以 root ( sudo padre)运行它时:

DBD::SQLite::db do failed: Safety level may not be changed inside a transaction at (eval 1905) line …
Run Code Online (Sandbox Code Playgroud)

sqlite perl padre ubuntu-14.04

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

如何将一个类的方法传递给 C++ 中的另一个函数?

假设我有一个类和一个函数

class A
{
    int a;
    int b;
    int mul()
    {
        return a+b;
    }
};
...

void func(int af, int bf, int (*fc)())
{
    ...
}
Run Code Online (Sandbox Code Playgroud)

在main函数中,函数应该使用A类的方法

int main
{
    A as;
    ...
    func(as.a, as.b, as.mul);
}
Run Code Online (Sandbox Code Playgroud)

但是,我不能那样做,编译器一直告诉我我通过了

(int&, int&, 'unresolved overloaded function type') 
Run Code Online (Sandbox Code Playgroud)

进入候选函数

(int, int, void(*)()).
Run Code Online (Sandbox Code Playgroud)

为什么会这样,以及如何将类的方法传递给另一个函数?

哦,我想我应该把问题说清楚一点。func(...)实际上是我正在研究的算法中的一个函数。并且class A是一个模型,将使用该算法进行模拟。所以我不认为我会在函数 B 中专门使用 A 的实例,而只是将 A 的方法和组件传入并使用它们。


更新:有些人提到在 A 类中使用静态方法。但是,这仍然是部分解决方案。使用静态方法mul()将迫使我声明 a 和 b 都是静态的。如果我必须使用 A 的多个实例,在我的主函数中的每个实例中使用不同的方法 a、b,那么使用静态变量只会失败。

那么,在不使用静态变量/方法的情况下如何解决这个问题还有其他建议吗?我记得在 python 等脚本语言中,传递任何类型的方法基本上都不是问题。为什么我不能在 C++ 中做类似的事情?或者 C++ 中是否有解决方法可以帮助我做到这一点?

c++ methods class function

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

如何将传说放在seaborn.FacetGrid的第一个子图上?

我有一个pandas DataFrame df,我用a的子图可视化seaborn.barplot.我的问题是我想把我的传说移到其中一个子图中.

要根据条件(在我的情况下为Area)创建子图,我使用seaborn.FacetGrid.这是我使用的代码:

import matplotlib.pyplot as plt
import matplotlib
import seaborn as sns
# .. load data
grid = sns.FacetGrid(df, col="Area", col_order=['F1','F2','F3'])
bp = grid.map(sns.barplot,'Param','Time','Method')
bp.add_legend()
bp.set_titles("{col_name}")
bp.set_ylabels("Time (s)")
bp.set_xlabels("Number")
sns.plt.show()
Run Code Online (Sandbox Code Playgroud)

这产生了这个情节:

barplot,所有

你看到这里的图例完全在右边,但是我想把它放在一个图中(例如左图),因为我的原始数据标签很长而且图例占用的空间太大.这是仅有1个绘图的示例,其中图例位于绘图内:

barplot1

和代码:

mask = df['Area']=='F3'
ax=sns.barplot(x='Param',y='Time',hue='Method',data=df[mask])
sns.plt.show()
Run Code Online (Sandbox Code Playgroud)

测试1:我尝试了一个答案的例子,他们在其中一个子图中有传说:

grid = sns.FacetGrid(df, col="Area", col_order=['F1','F2','F3'])
bp = grid.map(sns.barplot,'Param','Time','Method')
Ax = bp.axes[0]
Boxes = [item for item in Ax.get_children()
     if isinstance(item, matplotlib.patches.Rectangle)][:-1]
legend_labels  = ['So1', 'So2', 'So3', 'So4', 'So5'] …
Run Code Online (Sandbox Code Playgroud)

python plot matplotlib seaborn

3
推荐指数
2
解决办法
7820
查看次数

如何在 Python 中将字典写入 Excel

我在 python 中有以下字典,表示从 - 到距离矩阵。

graph = {'A':{'A':0,'B':6,'C':INF,'D':6,'E':7},

         'B':{'A':INF,'B':0,'C':5,'D':INF,'E':INF},

         'C':{'A':INF,'B':INF,'C':0,'D':9,'E':3},

         'D':{'A':INF,'B':INF,'C':9,'D':0,'E':7},

         'E':{'A':INF,'B':4,'C':INF,'D':INF,'E':0}

         }
Run Code Online (Sandbox Code Playgroud)

是否可以将此矩阵输出到 excel 或 csv 文件中,使其具有以下格式?我已经研究过使用 csv.writer 和 csv.DictWriter 但无法产生所需的输出。

在此处输入图片说明

python csv excel dictionary

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

python中graphviz中的图节点位置

我一直在寻找在python中的graphviz中指定图中节点位置的方法。我在点中找到了一个子图的等级命令,这就是我想要的,但是我找不到在python中的graphviz中组合子图和等级的方法。我也尝试强行设置节点位置,但也没有用。我创建了一个想要实现的简单示例。

这是我的代码:

from graphviz import Digraph

top_nodes = ['a', 'b', 'c']

other_nodes = ['d', 'e', 'f', 'g', 'm', 'n']

g = Digraph('test', format='png')

for n in top_nodes:
    g.node(str(n), color='red')

for n in other_nodes:
    g.node(str(n))

g.edge('a', 'd')
g.edge('d', 'g')
g.edge('g', 'm')
g.edge('m', 'n')
g.edge('b', 'e')
g.edge('b', 'f')
g.edge('e', 'n')
g.edge('c', 'f')

g.view()
Run Code Online (Sandbox Code Playgroud)

这是输出:

图形

我希望红色节点(“源”)位于同一级别的图形顶部,其他节点的位置并不重要,只要保留层次结构即可。

python graph graphviz rank

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

S3FS - 递归 CHOWN/CHMOD 需要很长时间

当您有几个目录(大约 70 个),每个目录包含相当多的文件时,s3fs 挂载上的任何递归chownchmod命令都需要很长时间。

这些命令中的任何一个都可能需要近 24 小时。我必须这样做,否则 Apache 进程无法访问这些文件/目录。正常挂载上的命令大约需要 20 秒。

安装方式:

/storage -o noatime -o allow_other -o use_cache=/s3fscache -o default_acl=public-read-write
Run Code Online (Sandbox Code Playgroud)

/etc/fuse.conf

user_allow_other
Run Code Online (Sandbox Code Playgroud)

使用最新版本:1.78

关于如何更快地做到这一点的任何想法?

fuse amazon-s3 s3fs

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

如何在python中删除元组中的引号和括号以格式化数据

我正在尝试仅打印出现的最大字符及其数量。

import collections

s = raw_input()
k = (collections.Counter(s).most_common(1)[0])
Run Code Online (Sandbox Code Playgroud)

对于列表,我们有strip "".join方法,但是如何以相反的方式处理元组,即删除引号和括号。

所以,这就是我希望输出不带引号和括号的结果

input = "aaabucted"

output = ('a', 3)
Run Code Online (Sandbox Code Playgroud)

我希望输出是a, 3

python tuples

-4
推荐指数
2
解决办法
7916
查看次数