小编ima*_*tha的帖子

Julia DataFrames 从多列中过滤

我想根据来自不同列的多个值过滤 DataFrame。我写了下面的代码,但它给了我一个错误,ERROR: TypeError: non-boolean (BitArray{1}) used in boolean context.

df[((df.eruption .== "CC2011") && (df.dataset .== "MODIS.NDVI.CDI")), :]
Run Code Online (Sandbox Code Playgroud)

在哪里eruptiondataset在数据帧列

任何想法我做错了什么?

dataframe julia

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

计算python中点的导数

我想计算点的导数,一些建议使用 np.diff 函数的互联网帖子。但是,我尝试将 np.diff 用于手动计算的结果(选择一个随机多项式方程并对其进行微分),以查看是否最终得到相同的结果。我使用了以下等式:Y = (X^3) + (X^2) + 7 最终得到的结果是不同的。任何想法为什么?有没有其他方法来计算差异。

在这个问题中,我试图解决,我收到了拟合样条函数的数据点(不是需要用样条拟合的原始数据,而是已经拟合的样条的点)。x 值的间隔相等。我只有点没有方程,我需要的是计算一阶、二阶和三阶导数。即 dy/dx、d2y/dx2、d3y/dx3。关于如何做到这一点的任何想法?提前致谢。

xval = [1,2,3,4,5]
yval = []
yval_dashList = []

#selected a polynomial equation
def calc_Y(X):
      Y = (X**3) + (X**2) + 7
      return(Y)

#calculate y values using equatuion 
for i in xval:
    yval.append(calc_Y(i))

#output: yval = [9,19,43,87,157]

#manually differentiated the equation or use sympy library (sym.diff(x**3 + x**2 + 7))
def calc_diffY(X):
   yval_dash = 3*(X**2) + 2**X

#store differentiated y-values in a list
for i …
Run Code Online (Sandbox Code Playgroud)

python numpy scipy

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

Julia DataFrames.jl、Groupby 和多列求和

我想知道如何使用“by”函数对多列进行分组和求和。如果我想对一列进行分组,我可以这样做

someData = DataFrame(:Countries => ["Afganistan","Albainia","Albainia","Andorra","Angola","Angola"],:population => rand(100:1000,6), :GDP => rand(1:100,6))

by(someData, :Countries, df ->DataFrame(pop_sum = sum(df[:population])))
Run Code Online (Sandbox Code Playgroud)

但是,我想得到人口和 GDP 的总和。我尝试了类似下面的内容,这当然是不正确的。有任何想法吗?

by(someData, :Countries, df ->DataFrame(pop_sum, GDP_sum = sum(df[[:population,:GDP]])))
Run Code Online (Sandbox Code Playgroud)

dataframe julia

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

加入多个数据帧

我想知道 Julia DataFrames 是否有办法一次性加入多个数据帧,

 using DataFrames

 employer = DataFrame(
    ID = Array{Int64}([01,02,03,04,05,09,11,20]),
    name = Array{String}(["Matthews","Daniella", "Kofi", "Vladmir", "Jean", "James", "Ayo", "Bill"])
    )

salary = DataFrame(
    ID = Array{Int64}([01,02,03,04,05,06,08,23]),
    amount = Array{Int64}([2050,3000,3500,3500,2500,3400,2700,4500])
)

hours = DataFrame(
    ID = Array{Int64}([01,02,03,04,05,08,09,23]),
    time = Array{Int64}([40,40,40,40,40,38,45,50])
)

# I tried adding them in an array but ofcoures that results in an error
empSalHrs = innerjoin([employer,salary,hours], on = :ID)

# In python you can achieve this using
import pandas as pd 
from functools import reduce

df …
Run Code Online (Sandbox Code Playgroud)

dataframe julia

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

在同一列中分配过滤值的结果不正确

我想过滤列中的值并为过滤结果分配一个值。但是我得到了不正确的结果,在这种情况下,我想为 20 到 30 之间的值分配一个值,其余为 0。但我为所有值分配了 1。任何想法为什么?

df = DataFrame(
    Dict(
        "time" => collect(1:10),
        "cost" => [23,99,81,56,28,31,98,34,21,17]
    )
)

df.cat = missing
df.cat = ifelse.(df.cost .> 20 .& df.cost .< 30, 1,0)
Run Code Online (Sandbox Code Playgroud)

出去:

在此处输入图片说明

dataframe julia

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

在 Julia 中获取嵌套数组的形状

我想知道是否有一个函数可以计算嵌套数组的形状。

 multiArr = [[1,2,3,4],[5,6,7,8]]
 size(multiArr)
 #Out > (2,)
Run Code Online (Sandbox Code Playgroud)

我正在寻找输出 (2,4)

我知道如果你把它转换成矩阵你可以得到这个输出,

 mat = reshape(hcat(multiArr...),size(multiArr)[1],size(multiArr[1])[1])
 size(mat)
 #Out > (2,4)
Run Code Online (Sandbox Code Playgroud)

但是想知道是否有办法获得嵌套数组的内部维度?

julia

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

Pandas 如何使用 dt 按月和年分组

我只是想知道如何使用 pandas.series.dt 按年份和月份进行分组。

下面的代码仅按年份分组,但我如何添加进一步的过滤器以按月分组。

Data = {'Date':['21.10.1999','30.10.1999','02.11.1999','17.08.2000','09.10.2001','14.07.2000'],'X': [10,20,30,40,50,60],'Y': [5,10,15,20,25,30]}

df = pd.DataFrame(Data)

#Convert to pandas date time
df['Date'] = pd.to_datetime(df['Date'])

#Obtain dataframe dtypes
print(df.dtypes)

print(df)
print(df.groupby(df['Date'].dt.year).sum())
Run Code Online (Sandbox Code Playgroud)

python pandas

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

在 Tweepy 中使用 search_full_archive

有谁知道如何使用search_full_archivetweepy 模块中的功能?我使用了类似于常规搜索的光标功能,但它不起作用。

import tweepy as tw

api_key = '***'
api_secret_key = '***'
access_token = '***'
access_token_secret = '***'

#Authenticate
auth = tw.OAuthHandler(api_key, api_secret_key)
auth.set_access_token(access_token,access_token_secret)
api = tw.API(auth)

# search tweets
def get_tweets_full(hashtag):
    tweetObj_full = tw.Cursor(
        self.api.search_full_archive,
        environment_name = 'VolcanicDisaster', # Dev environment label from twitter developer dashboard
        query = hashtag
    )
     return tweetObj

get_tweets(hashtag = '#kilauea')
Run Code Online (Sandbox Code Playgroud)

我收到一条错误消息,指出“API 对象没有属性 search_full_archive”。但是,如果我使用常规搜索方法api.search(及其参数 q)而不是api.search_full_archive它,则效果很好。我想回顾2年前的推文,需要api_full_search,想知道是否有人知道如何使用这个功能?我已经使用 Twitter API 成功设置了高级帐户(沙盒版本 - 免费),但是当我输入时,我在方法的输出列表中看dir(api)不到该方法。search_full_archive

tweepy

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

避免每次修改函数时都重新启动 julia REPL

我正在编写一个 julia 代码,其中有几个文件,并从这些文件调用函数到一个名为 的主函数run.jl。每次我对这些文件中的任何一个进行更改时,我都需要重新启动 Julia REPL,这有点烦人。无论如何要解决这个问题。例如

# --------------------------------- run.jl
include("agent_types.jl")
include("resc_funcs.jl")

using .AgentTypes: Cas, Resc
using .RescFuncs: update_rescuers_at_pma!, travel_to_loc

# ... some code

for i = 1:500
   update_rescuers_at_pma!(model)
   travel_to_loc(model)
end

# ------------------------------ resc_funcs.jl
function travel_to_loc(model)
    println(get_resc_by_prop(model, :on_way_to_iz))
    for resc_id in get_resc_by_prop(model,:on_way_to_iz)
        push!(model[resc_id].dist_traject, model[resc_id].dist_to_agent) #This is just for checking purposes
        model[resc_id].dist_to_agent -= model.dist_per_step 
        push!(model[resc_id].loc_traject, "on_way_to_iz")
    end
    #If we add new print statement here and execute run.jl it wont print
    println(model[resc_id].loc_traject) #new amendment to code
end
Run Code Online (Sandbox Code Playgroud)

但现在当我去更新travel_to_loc功能时。在反映这些更改之前,我需要重新启动 Julia …

julia

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

在字符串后提取文本

我想从以下文本中提取“name=”之后的字符串。我已经编写了以下正则表达式,但它并没有真正起作用。所需的输出是[Taal, Muntinlupa city]

    text = [ "id='00e5885868b4d7ed', url='https://api.twitter.com/1.1/geo/id/00e5885868b4d7ed.json', place_type='city', name='Taal', full_name='Taal, Calabarzon', country_code='PH', country='Republic of the Philippines'",
     "id='00c699d656122ebe', url='https://api.twitter.com/1.1/geo/id/00c699d656122ebe.json', place_type='city', name='Muntinlupa City', full_name='Muntinlupa City, National Capital Region', country_code='PH', country='Republic of the Philippines']

    matched_vals = [re.findall(r'(?<=name\=).*(?=\s)',tweet) for tweet in text]
Run Code Online (Sandbox Code Playgroud)

python python-3.x python-re

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

标签 统计

julia ×6

dataframe ×4

python ×3

numpy ×1

pandas ×1

python-3.x ×1

python-re ×1

scipy ×1

tweepy ×1