小编Viv*_*gan的帖子

Python atan或atan2,我应该使用什么?

我的公式f = arctan(ImZ/ReZ)

有两种选择:

选项1(atan):

ImZ=-4.593172163003
ImR=-4.297336384845

>>> z=y/x
>>> f1=math.atan(z)
>>> f1
0.8186613519278327
Run Code Online (Sandbox Code Playgroud)

选项2(atan2)

>>> f=math.atan2(y,x)
>>> f
-2.3229313016619604
Run Code Online (Sandbox Code Playgroud)

为什么这两个结果不同?

python math

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

sklearn kneighbours内存错误python

我正在使用 Windows 7 8gb RAM。

这是我用来对 52MB 训练数据集中的自由文本列进行矢量化的矢量化器

vec = CountVectorizer(analyzer='word',stop_words='english',decode_error='ignore',binary=True)
Run Code Online (Sandbox Code Playgroud)

我想用这个数据集计算 18MB 测试集的 5 个最近邻。

nbrs = NearestNeighbors(n_neighbors=5).fit(vec.transform(data['clean_sum']))
vectors = vec.transform(data_test['clean_sum'])
distances,indices = nbrs.kneighbors(vectors)
Run Code Online (Sandbox Code Playgroud)

这是堆栈跟踪 -

Traceback (most recent call last):
  File "cr_nearness.py", line 224, in <module>
    distances,indices = nbrs.kneighbors(vectors)
  File "C:\Anaconda2\lib\site-packages\sklearn\neighbors\base.py", line 371,
kneighbors
    n_jobs=n_jobs, squared=True)
  File "C:\Anaconda2\lib\site-packages\sklearn\metrics\pairwise.py", line 12
in pairwise_distances
    return _parallel_pairwise(X, Y, func, n_jobs, **kwds)
  File "C:\Anaconda2\lib\site-packages\sklearn\metrics\pairwise.py", line 10
in _parallel_pairwise
    return func(X, Y, **kwds)
  File "C:\Anaconda2\lib\site-packages\sklearn\metrics\pairwise.py", line 23
n euclidean_distances
    distances = safe_sparse_dot(X, Y.T, …
Run Code Online (Sandbox Code Playgroud)

python out-of-memory nearest-neighbor knn scikit-learn

5
推荐指数
1
解决办法
3500
查看次数

用第一个唯一值替换其他重复行列并创建查找

这是数据——

Account_Number  Dummy_Account
1050080713252   ACC0000000000001
1050223213427   ACC0000000000002
1050080713252   ACC0000000169532
1105113502309   ACC0000000123005
1100043521537   ACC0000000000004
1100045301840   ACC0000000000005
1105113502309   ACC0000000000040
Run Code Online (Sandbox Code Playgroud)

中的行1,3具有重复值Account_Number。行也是如此4,7。我需要Account_NumberDummy_Account. 所以对于1050080713252,两行1,3应该有相同的虚拟值ACC0000000000001。但不是直接替换,我想保留原始映射。

我的预期输出是 -

Account_Number_Map      Dummy_Account_Original
ACC0000000000001    ACC0000000000001
ACC0000000000002    ACC0000000000002
ACC0000000000001    ACC0000000169532
ACC0000000123005    ACC0000000123005
ACC0000000000004    ACC0000000000004
ACC0000000000005    ACC0000000000005
ACC0000000123005    ACC0000000000040
Run Code Online (Sandbox Code Playgroud)

由于ACC0000000169532是重复的Dummy_Accountwrt Account_Number,我想创建一个查找来替换它ACC0000000000001

我试过的

我开始创建一个dict这样的 -

maps = dict(zip(df.Dummy_Account, df.Account_Number))
Run Code Online (Sandbox Code Playgroud)

我想创建一个dict将原始Dummy_Account值作为key和新Dummy_Account值作为的value …

python pandas

5
推荐指数
1
解决办法
714
查看次数

将列解析为日期时间的最快方法

我有超过40万行的以下数据框。

df = pd.DataFrame({'date' : ['03/02/2015 23:00',
'03/02/2015 23:30',
'04/02/2015 00:00',
'04/02/2015 00:30',
'04/02/2015 01:00',
'04/02/2015 01:30',
'04/02/2015 02:00',
'04/02/2015 02:30',
'04/02/2015 03:00',
'04/02/2015 03:30',
'04/02/2015 04:00',
'04/02/2015 04:30',
'04/02/2015 05:00',
'04/02/2015 05:30',
'04/02/2015 06:00',
'04/02/2015 06:30',
'04/02/2015 07:00']})
Run Code Online (Sandbox Code Playgroud)

我正在尝试尽快解析csv文件在pandas中的日期列。我知道如何使用read_csv做到这一点,但这需要很多时间!另外,我尝试了以下方法,但效果非常慢:df['dateTimeFormat'] = pd.to_datetime(df['date'],dayfirst=True)

我怎样才能高效,快速地将date列解析为datetime?

非常感谢您的帮助,

皮埃尔

datetime parsing pandas

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

Python Dictionary:如何使用单独的字典键更新字典值,基于键

我有两个长度不等的词典,例如:

people = {"john" : "carpenter", "jill": "locksmith", "bob":"carpenter", "jane": "pilot", "dan": "locksmith"}

jobcode = {"carpenter": 1, "locksmith": 2, "pilot": 3}
Run Code Online (Sandbox Code Playgroud)

就是我想要做的是替换值peoplejobcode值.所以你最终得到:n

people = {"john": 1, "jill": 2, "bob": 1, "jane": 3, "dan":2} 
Run Code Online (Sandbox Code Playgroud)

我很乐意再作新的dict封装这个新的数据很好,但到目前为止,我想我已经最接近的是这个 ...我想...

任何帮助将不胜感激.

python dictionary replace updates python-3.x

0
推荐指数
1
解决办法
4428
查看次数