我想根据来自不同列的多个值过滤 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)
在哪里eruption和dataset在数据帧列
任何想法我做错了什么?
我想计算点的导数,一些建议使用 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) 我想知道如何使用“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) 我想知道 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) 我想过滤列中的值并为过滤结果分配一个值。但是我得到了不正确的结果,在这种情况下,我想为 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)
出去:
我想知道是否有一个函数可以计算嵌套数组的形状。
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)
但是想知道是否有办法获得嵌套数组的内部维度?
我只是想知道如何使用 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) 有谁知道如何使用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
我正在编写一个 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 …
我想从以下文本中提取“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)