小编Bra*_*mon的帖子

如何删除数组中最小的数字,如果有多个最小数字,则删除第一个

我正在尝试制作一个脚本,其中输入是一个带有随机数的数组。我尝试删除数组中的最低数字,这没有问题。但是,如果该数字在数组中多次出现,我如何确保只有该数字第一次出现才被删除?

假设我们有以下数组:

a = np.array([2,6,2,1,6,1,9])
Run Code Online (Sandbox Code Playgroud)

这里最低的数字是 1,但由于它出现了两次,我只想删除第一次出现,因此我得到以下数组:

 a = np.array([2,6,2,6,1,9])
Run Code Online (Sandbox Code Playgroud)

python arrays numpy minimum python-3.x

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

在日期时间内格式化月份名称缩写(Jan/Feb/...)

我正在尝试对以下形式的字符串进行日期时间格式编码:“06JAN2018”或“31DEC2017”。

我认为这是 format = '%d[xxxx]%Y' 但我不知道如何对其月份部分进行编码。

是否有可能的每种编码类型的列表?

python datetime

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

汇总并合并列表及其计数

我有一个并排放置的数据列表.如何汇总和映射其值:

我的列表:

country = ['Australia', 'Australia', 'UAE', 'Australia', 'Israel', 'Ghana', 'Ghana']
views = [1, 2, 4, 5, 77, 5, 2]
Run Code Online (Sandbox Code Playgroud)

虽然我已经能够将它们并排映射...像这样:

"Australia: 1",
"Australia: 2",
"UAE: 4",
"Australia: 5",
"Israel: 77",
"Ghana: 5",
"Ghana: "2"
Run Code Online (Sandbox Code Playgroud)

我尝试了什么:

result = dict(zip(country, views))
{'Australia': 5, 'UAE': 4, 'Israel': 77, 'Ghana': 2}
Run Code Online (Sandbox Code Playgroud)

我想得到双方的总结和总结......像这样:

"data": {
    "countries": [
        "Australia: 8",
        "UAE: 4",
        "Israel: 77",
        "Ghana: 7"]}
Run Code Online (Sandbox Code Playgroud)

python list python-3.x

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

Pandas DataFrame 的组合与子类

我正在尝试在 Python 类中创建一个名为“tilt”的方法,该方法使用 Pandas 将 DataFrame 颠倒过来。但每当我在此类创建的实例上使用此“倾斜”方法时,我都会收到此错误“该对象没有属性“iloc””。

import numpy as np
import pandas as pd

class Board():

    def __init__(self):
        pass

    def arrange(self):

        board=pd.DataFrame(np.arange(1,65).reshape(8,8),index=[1,2,3,4,5,6,7,8],columns=[1,2,3,4,5,6,7,8])
        self = board.copy()
        self.loc[1]=['BP1','BP2','BP3','BP4','BP5','BP6','BP7','BP8']
        self.loc[2]=['blR','blK','blB','bQ','bK','brB','brK','brR']
        self.loc[7]=['wlR','wlK','wlB','wK','wQ','wrB','wrK','wrR']
        self.loc[8]=['WP1','WP2','WP3','WP4','WP5','WP6','WP7','WP8']
        print(self)

    def tilt(self):
        self.iloc[::-1]
        print(self)
Run Code Online (Sandbox Code Playgroud)

python class pandas

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

将小函数转换为协程

我觉得我对异步 IO 的理解存在差距:在较大的协程范围内将小函数包装到协程中是否有好处? 正确地发出事件循环信号有好处吗?这种好处的程度是否取决于包装的函数是 IO 还是 CPU 密集型?

示例:我有一个协程,download()其中:

  1. 通过 . 从 HTTP 端点下载 JSON 序列化字节aiohttp
  2. 通过 - 压缩这些字节bz2.compress()- 这本身不是可等待的
  3. 通过以下方式将压缩字节写入 S3aioboto3

因此,第 1 部分和第 3 部分使用这些库中的预定义协程;默认情况下,第 2 部分没有。

简化的例子:

import bz2
import io
import aiohttp
import aioboto3

async def download(endpoint, bucket_name, key):
    async with aiohttp.ClientSession() as session:
        async with session.request("GET", endpoint, raise_for_status=True) as resp:
            raw = await resp.read()  # payload (bytes)
            # Yikes - isn't it bad to throw a …
Run Code Online (Sandbox Code Playgroud)

python python-3.x python-asyncio

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

每组限制 - Google BigQuery/标准 SQL

我有一个如下表(此处为示例):

CREATE TABLE topics (
  name varchar(64),
  url varchar(253),
  statistic integer,
  pubdate timestamp
);

INSERT INTO topics VALUES
('a',  'b',  100,  TIMESTAMP '2011-05-16 15:36:38'),  
('a',  'c',  110,  TIMESTAMP '2014-04-01 00:00:00'),  
('a',  'd',  120,  TIMESTAMP '2014-04-01 00:00:00'),  
('a',  'e',  90,   TIMESTAMP '2011-05-16 15:36:38'), 
('a',  'f',  80,   TIMESTAMP '2014-04-01 00:00:00'), 
('a',  'g',  70,   TIMESTAMP '2011-05-16 15:36:38'), 
('a',  'h',  150,  TIMESTAMP '2014-04-01 00:00:00'),  
('a',  'i',  50,   TIMESTAMP '2011-05-16 15:36:38'), 
('b',  'j',  10,   TIMESTAMP '2014-04-01 00:00:00'), 
('b',  'k',  11,   TIMESTAMP '2011-05-16 15:36:38'), …
Run Code Online (Sandbox Code Playgroud)

sql greatest-n-per-group google-bigquery

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

如何根据概率分布在python中生成随机分类数据?

我试图从一个现有的列中生成一个随机的分类变量列,以创建一些综合数据。例如,如果我的列具有3个值0,1,2,其中0出现在50%的时间中,而1和2出现在30%和20%的时间中,则我希望新的随机列也具有相似(但不相同)的比例

关于交叉验证,有一个类似的问题已经使用R解决了。https://stats.stackexchange.com/questions/14158/how-to-generate-random-categorical-data。但是我想要一个Python解决方案

random numpy python-3.x pandas

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

删除SQL中的重复列

假设我的SQL数据库中有三列

ID | NAME | PHONE
-----------------    
 1 | JEFF | 467
 2 | JEFF | 489
 3 | JOHN | 234
 4 | JACK | 323
 5 | JEFF | 378
Run Code Online (Sandbox Code Playgroud)

我想编写一个SQL查询,删除删除每个双NAME列的所有列.这意味着在运行SQL查询后,表应如下所示:

ID | NAME | PHONE
-----------------
 1 | JEFF | 467
 2 | JOHN | 234
 3 | JACK | 323
Run Code Online (Sandbox Code Playgroud)

非常感谢你提前!

非常感谢,我现在把它改成了这个

delete from product_list y
    where exists (select 1 from product_list y2 where y.model = y2.model and y2.linkid < y.linkid);
Run Code Online (Sandbox Code Playgroud)

但我总是得到这个错误:

#1064 - …
Run Code Online (Sandbox Code Playgroud)

sql

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

将 Dataframe 传递给 Apply 函数 pandas 作为参数

是否可以将 DataFrame 传递给apply这样的函数?

df2 = df1.apply(func,axis=1,args=df2)
def func(df1,df2):
    # do stuff in df2 for each row of df1
    return df2
Run Code Online (Sandbox Code Playgroud)

两个 DataFrame 的长度不同。

python apply pandas

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

scipy.stats.johnsonsu 中的 a 和 b 参数是什么?

我正在尝试将Johnson SU分布拟合到一组经验丰富的标准普尔 500 指数回报中。我的理解(免责声明:不是数学专家)是这个分布包含了第三和第四时刻(偏斜和峰度)。除了loc(均值)和scale(标准差)johnsonsu之外,a还有两个额外的参数,和b。但是这些参数的顺序和规格令人困惑。

这就是我的困惑源于:如果我将回报纳入 SPDR S&P 500 ETF Trust (SPY),我会得到以下经验统计数据:

from pandas_datareader.data import DataReader as dr
r = dr('SPY', 'google', start='2000')['Close'].pct_change().dropna()
mean, var, std, skew, kurt = r.mean(), r.var(0), r.std(0), r.skew(), r.kurt() # ddof = 0
# mean: 0.00027732907268771364
# var: 0.00014416720067485022
# std: 0.012006964673673785
Run Code Online (Sandbox Code Playgroud)

现在,如果我对这个经验数据拟合正态分布,.fit应该返回locscale参数。(正态分布所需的一切。)检查:

import scipy.stats as scs

normmean, normstd = scs.norm.fit(r)
print(np.allclose(normmean, mean))
print(np.allclose(normstd, std))

True
True
Run Code Online (Sandbox Code Playgroud)

但不太清楚返回的是什么 …

python finance distribution scipy

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