重复:https://stackoverflow.com/questions/135651/learning-unit-testing
我正在尝试为我的研究小组开发一些软件来分析和绘制实验数据.我想在没有错误的地方做到这一点.这是单元测试的情况吗?如果是这样,你可能会指出我对单元测试的一些很好的参考?
我在下面的Python代码中运行了Python代码,该代码是"绘制地图:可视化海地地震危机数据"的一本书,用于数据分析.第242-246页
该代码应该创建一个海地的情节地图,但我得到一个错误如下:
Traceback (most recent call last):
File "Haiti.py", line 74, in <module>
x, y = m(cat_data.LONGITUDE, cat_data.LATITUDE)
File "/usr/local/lib/python2.7/site-packages/mpl_toolkits/basemap/__init__.py", line 1148, in __call__
xout,yout = self.projtran(x,y,inverse=inverse)
File "/usr/local/lib/python2.7/site-packages/mpl_toolkits/basemap/proj.py", line 286, in __call__
outx,outy = self._proj4(x, y, inverse=inverse)
File "/usr/local/lib/python2.7/site-packages/mpl_toolkits/basemap/pyproj.py", line 388, in __call__
_proj.Proj._fwd(self, inx, iny, radians=radians, errcheck=errcheck)
File "_proj.pyx", line 122, in _proj.Proj._fwd (src/_proj.c:1571)
RuntimeError
Run Code Online (Sandbox Code Playgroud)
我检查了我的机器上是否安装了mpl_toolkits.basemap和proj模块.Basemap是按照指示从源代码安装的,而proj是由Homebrew安装的,它们看起来很好.
如果您安装了底图和proj,此代码是否成功运行?如果没有,您认为这是模块安装问题,代码本身还是其他任何问题?
Haiti.csv文件可以从https://github.com/pydata/pydata-book/raw/master/ch08/Haiti.csv下载
import pandas as pd
import numpy as np
from …Run Code Online (Sandbox Code Playgroud) 我有两张桌子
1.Project_Cust_Packages__c
Project_Id__c | LOV_Name__c |
101 | PAS |
101 | PMS |
101 | FTR |
Run Code Online (Sandbox Code Playgroud)
2.AAProj_Tbl
ID | ISPAS |ISPMS |ISFTR |
Run Code Online (Sandbox Code Playgroud)
101 | NULL | NULL | NULL |
Run Code Online (Sandbox Code Playgroud)
UPDATE AAProj_Tbl
SET ISPAS=
CASE
WHEN A.[LOV_Name__c]='PAS' THEN 'Y'
WHEN ISPAS='Y' THEN 'Y'
ELSE 'N'
END
,ISPMS=
CASE
WHEN A.[LOV_Name__c]='PMS' THEN 'Y'
WHEN ISPMS='Y' THEN 'Y'
ELSE 'N'
END
,ISFTR=
CASE
WHEN A.[LOV_Name__c]='FTR' THEN 'Y'
WHEN ISFTR='Y' THEN 'Y'
ELSE 'N'
END
FROM [Project_Cust_Packages__c] A inner …Run Code Online (Sandbox Code Playgroud) 我想对排序算法的速度做一个经验测试。最初我随机生成数据,但这似乎是不公平的,并且弄乱了一些算法。例如,对于快速排序,枢轴选择很重要,选择枢轴的一种方法是始终选择第一个,另一种方法是选择第一个、最后一个和中间元素的中值。但是如果数组已经是随机的,那么选择哪个主元并不重要,所以从这个意义上说这是不公平的。你如何解决这个问题?
我在哪里可以获得用于测试排序算法的真实样本?我听说在实际场景中数据通常是部分排序的,但是如何在排序算法中使用这些信息?
假设您在BigQuery中有以下表格:
A = user1 | 0 0 |
user2 | 0 3 |
user3 | 4 0 |
Run Code Online (Sandbox Code Playgroud)
交叉加入后,你有
dist = |user1 user2 0 0 , 0 3 | #comma is just showing user val seperation
|user1 user3 0 0 , 4 0 |
|user2 user3 0 3 , 4 0 |
Run Code Online (Sandbox Code Playgroud)
如何在BigQuery中执行行聚合以计算跨行的成对聚合.作为典型用例,您可以计算两个用户之间的欧氏距离.我想在两个用户之间计算以下指标:
sum(min(user1_row[i], user2_row[i]) / abs(user1_row[i] - user2_row[i]))
Run Code Online (Sandbox Code Playgroud)
为每对用户总结了所有i.
例如,在Python中,您只需:
for i in np.arange(row_length/2)]):
dist.append([user1, user2, np.sum(min(r1[i], r2[i]) / abs(r1[i] - r2[i]))])
Run Code Online (Sandbox Code Playgroud) tweet<- c("boy","girl","boy","x")
unique_words<- c("asdfdd","boy","girl","ahmed","asdf","asfeertrt")
word_count<-table(tweet[tweet %in%unique_words])
word_occurence<- as.integer(unique_words%in% tweet)
Run Code Online (Sandbox Code Playgroud)
我得到了这些输出:word_count ::
boy girl
2 1
Run Code Online (Sandbox Code Playgroud)
word_occurence ::
0 1 1 0 0 0
Run Code Online (Sandbox Code Playgroud)
但我希望输出如下:0 2 1 0 0 0
我在Python pandas中有以下示例数据框:
+---+------+------+------+
| | col1 | col2 | col3 |
+---+------+------+------+
| 0 | a | d | b |
+---+------+------+------+
| 1 | a | c | b |
+---+------+------+------+
| 2 | c | b | c |
+---+------+------+------+
| 3 | b | b | c |
+---+------+------+------+
| 4 | a | a | d |
+---+------+------+------+
Run Code Online (Sandbox Code Playgroud)
我想对第1-3列中的所有"a","b","c"和"d"值进行计数,以便最终得到如下数据框:
+---+--------+-------+
| | letter | count |
+---+--------+-------+
| 0 | a | 4 |
+---+--------+-------+
| …Run Code Online (Sandbox Code Playgroud) Age <- c(90,56,51,'NULL',67,'NULL',51)
Sex <- c('Male','Female','NULL','male','NULL','Female','Male')
Tenure <- c(2,'NULL',3,4,3,3,4)
df <- data.frame(Age, Sex, Tenure)
Run Code Online (Sandbox Code Playgroud)
在上面的例子中,有'NULL'值作为字符/字符串格式.我试图用NA来代替'NULL'值.我能够将它用于单个列df$age[which(df$Age=='NULL)]<-NA'但是我不想为所有列写这个.
如何将类似的逻辑应用于所有列,以便将所有'NULL'值df转换为NAs?我猜测apply或自定义函数或for循环将做到这一点.
我们可以将spark与sql-server连接吗?如果是这样,怎么办?我是Spark的新手,我想将服务器连接到spark并直接从sql-server工作,而不是上传.txt或.csv文件。请帮忙,谢谢。
我将google Colab笔记本用于需要我在地图上绘制GPS坐标的项目。我想为此使用底图。我尝试通过使用将其导入Colab笔记本中,
from mpl_tools.basemap import Basemap
并显示以下错误:
ModuleNotFoundError Traceback (most recent call last)
<ipython-input-24-2cb85a2f9bb7> in <module>()
----> 1 from mpl_tools.basemap import Basemap
ModuleNotFoundError: No module named 'mpl_tools'
Run Code Online (Sandbox Code Playgroud)
我需要安装底图模块才能使用它。我尝试!pip install basemap并尝试在Colab上运行它,但这没有用。
python matplotlib data-analysis data-science google-colaboratory
data-analysis ×10
python ×3
pandas ×2
r ×2
sql ×2
aggregation ×1
algorithm ×1
apache-spark ×1
counter ×1
cross-join ×1
data-science ×1
database ×1
dataframe ×1
java ×1
matplotlib ×1
na ×1
proj ×1
sorting ×1
sql-server ×1
unit-testing ×1