标签: data-analysis

单元测试......应该在这里使用吗?

重复:https://stackoverflow.com/questions/135651/learning-unit-testing


我正在尝试为我的研究小组开发一些软件来分析和绘制实验数据.我想在没有错误的地方做到这一点.这是单元测试的情况吗?如果是这样,你可能会指出我对单元测试的一些很好的参考?

unit-testing data-analysis scientific-software

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

用于地图绘制的pandas错误与basemap/proj

我在下面的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.basemapproj模块.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)

python data-analysis proj pandas matplotlib-basemap

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

在INNER联接上使用CASE语句进行更新

我有两张桌子

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)

sql database data-warehouse data-analysis

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

你如何测试排序算法的速度?

我想对排序算法的速度做一个经验测试。最初我随机生成数据,但这似乎是不公平的,并且弄乱了一些算法。例如,对于快速排序,枢轴选择很重要,选择枢轴的一种方法是始终选择第一个,另一种方法是选择第一个、最后一个和中间元素的中值。但是如果数组已经是随机的,那么选择哪个主元并不重要,所以从这个意义上说这是不公平的。你如何解决这个问题?

我在哪里可以获得用于测试排序算法的真实样本?我听说在实际场景中数据通常是部分排序的,但是如何在排序算法中使用这些信息?

java sorting algorithm data-analysis

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

BigQuery中交叉连接后的行聚合

假设您在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)

sql data-analysis cross-join aggregation google-bigquery

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

计算另一个向量中向量的出现

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

r data-analysis

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

如何在pandas中的多个列中进行groupby计数

我在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)

python counter data-analysis dataframe pandas

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

为DataFrame中的所有列查找和替换NA值

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循环将做到这一点.

r data-analysis na data-cleaning

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

Spark-sqlserver连接

我们可以将spark与sql-server连接吗?如果是这样,怎么办?我是Spark的新手,我想将服务器连接到spark并直接从sql-server工作,而不是上传.txt或.csv文件。请帮忙,谢谢。

sql-server data-analysis apache-spark

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

如何在Google Colab上安装和使用底图?

我将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

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