Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
 Pandas_IT技术博客_编程技术问答 - 「Fatal编程技术网」

Pandas 在一个数据帧内递归连接URL中的数据

我正在尝试创建一个数据帧,其中包含来自多个URL的数据。代码可以工作,但是我无法将数据递归地存储在一个数据帧中。每次都用新url的数据替换数据帧(称为帧),而不是将新数据连接到同一帧。谢谢你,我非常感谢你的帮助 import urllib import re import json import pandas import pylab import numpy import matplotlib.pyplot from pandas import * from pylab import * fr

Pandas 如何更改hdfstore中所有列的字符串列大小?

如何在hdf5表中更改所有字符串列的最小项大小?我在运行时不知道数据帧结构,因此无法硬编码。请参阅文档 itemsize是在第一次追加时创建的(以后不能更改)。如果min\u itemsize 未指定它将是该追加中字符串的最大长度 In [1]: df = DataFrame({ 'A' : ['foo','bar']}) In [2]: store = pd.HDFStore('test.h5',mode='w') In [3]: store.append('df',df,min_item

Pandas 将字符串转换为整型数据帧索引

我有一个带有多索引的熊猫数据帧。不幸的是,其中一个指数以年为字符串 e、 g.“2010”、“2011” 如何将它们转换为整数 更具体地说 MultiIndex(levels=[[u'2010', u'2011'], [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]], labels=[[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ...], [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 1

Pandas 熊猫系列接口不一致;提供对底层数据的访问

虽然pandas 0.15.0之后的新分类系列支持非常棒,但我对他们决定让底层数据除了通过带下划线的变量之外无法访问感到有点恼火。考虑下面的代码: import numpy as np import pandas as pd x = np.empty(3, dtype=np.int64) s = pd.DatetimeIndex(x, tz='UTC') x Out[17]: array([140556737562568, 55872352, 32]

Pandas 对熊猫中的嵌套groupby执行min()操作

我刚刚开始了解熊猫,我无法克服一个概念上的问题。我的数据框架如下: df=pd.DataFrame({'ANIMAL':[1,1,1,1,1,2,2,2], 'AGE_D' : [3,6,47,377,698,1,9,241], 'AGE_Y' : [1,1,1,2,2,1,1,1]}) 我想在animal and age_y中创建一个嵌套组,然后在子组中选择最小值。 所需的输出将是: ANIMAL AGE_Y AGE_D 1

Pandas 将一列重塑为多列

我正在使用的df如下所示: Year Age Income 1945 1 234 1945 1 65 1945 2 234 ... 1946 1 34 ... 2015 5 34 我想把它转换成这样,收入值填充df,年龄是指数 Age 1955 1956 1957 ... 2015 0 1 2 3 ... 99 这看起来像是您希望透视表。熊猫很好 import pandas as pd df = pd.DataFrame([[1945, 1, 2

Pandas 用概率填充缺失值

假设给一个列水果,我有57个香蕉,54个苹果和其他空值。 现在我想用fillna填充空值,其中57/(57+54)概率作为香蕉,54/(57+54)概率作为苹果,我应该怎么做 Fruit ------ None Banana Fruit Banana ....(with 57 banana, 54 apple, 10 None) 设置 fruit = pd.Series(['banana'] * 57 + ['apple'] * 54 + [None] * 10, name='fruit')

Pandas 包含多索引数据帧

我有一个多索引数据框架,外层索引由股票名称组成,内层索引由日期组成 Open High Low Close AAPL 2010-01-04 213.429998 214.499996 212.380001 214.009998 2010-01-08 210.299994 212.000006 209.060005 211.980005 OPK 2010-01-

Pandas 带矩形的时间序列子地块

我想在一个子地块中使用pandas timeseries,在另一个子地块中使用矩形创建一个绘图 如果我不包括子地块,我可以很容易地实现这一点: 将numpy导入为np 作为pd进口熊猫 将matplotlib.pyplot作为plt导入 将matplotlib.dates导入为mdates 将matplotlib.patches作为MPatch导入 N=100 np.随机种子(N) 日期=pd.日期\范围(开始时间=2018-01-01',期间=N,频率=D') 三分之一δ=(日期[-1]-日期

Pandas 按字符串中的第一个字母对数据帧的文本字符串列进行排序

我有一个数组,我需要通过一个文本字符串的列变量进行排序。我尝试了三种方法。前两个是相似的。最后一种方法进行排序,但它也会生成一个神秘专栏 以下是小测试数据集: raw_corpus #test data unique_ID count trigger_channel_cat 0 11530 1 Photo and Video 1 17176 1 Environment Control and Monitoring 2 6984 1 Securi

Pandas 按滚动标准差分组

我想按组计算一个值的标准偏差。 我得到了意想不到的结果。有人能帮忙吗 from numpy import nan df = {'value': {1: nan, 2: nan, 3: nan, 4: nan, 5: nan, 6: nan, 7: nan, 8: nan, 9: nan, 10: 0.1, 11: 0.3, 12: 0.6, 13: 0.2, 14: -0.1, 15: 0.2}} df = pd.DataFrame.from_dict(df) df['group'] = [1,

Pandas 在阵列上运行的UDF

我有一个PySpark UDF,它接受一个数组并返回其后缀: func.udf( lambda ng: ng[1:], ArrayType(IntegerType()) ) 是否可以将其转换为标量udf? 熊猫是否提供必要的矢量化操作 感谢您可以使用udf获得相同的功能,但请确保从udf返回包含列表的序列,因为序列通常需要元素列表,如果您直接以序列形式返回列表,则行数组将被展平并转换为多行 编辑正如OP在评论中指出的那样,我以前的答案(pd.Series([v[0][1:])使用索引是错误的,

Pandas 日期范围不包括开始日期和结束日期

我有两个日期:2018年11月1日和2019年1月1日。 我想生成一个与每个月的第一个日期相对应的月日期。我做到了: didx=pd.date_range(start='11/01/2018', end='01/01/2019', freq='M',closed=None) 但我得到了: 2018-11-30 2018-12-31 我想: 2018-11-01 2018-12-01 2019-01-01 使用freq='MS' pd.date_range(start='11/01/2018

Pandas 如何通过查找另一个字符串位置来分割数据帧中的字符串,并且每行的位置值不同?

我有一个数据帧列“df_weather[0]”,如下所示(字符串非常长) S.No,值, 452,“温度”:83.0, 514,当前“温度”:81.0, 653,新修改的“温度”:89.0, 我想提取字符串温度后的值。ie 83.0、81.0和89.0 为此,我找到了字符串“temperature”的位置,并将所有三个值存储到一个列表中。现在该列表有三个位置 第二,我尝试通过将每个成员放入一个列表来分割字符串 list_weather=df_weather[1].str.find(““温度”:

Pandas 删除列中包含双下划线的行

我有一个名为Box的列名,其中包含4000多行,具有唯一的变量名。行中的每个变量由行中字符串中的第一个字母和最后一个数字区分。例如,A_B(1)、A_B(1)、C_D(3)、D_F(2)、AA_B(1)。 因为,在本例中,我想删除字符串中包含_u(双下划线)的所有行 以前我做过的是基于名字的。但我不想被硬编码。我想成为普通人。只需删除所有包含双下划线(_)的行 请告诉我如何使用模式匹配 df.loc[~df['Box'].str.contains(r'_{2}')] 例如: import

将pandas中不均匀的数据帧从锯齿状宽改为高

我有5k行,每行最多有10个关联值,例如: df=pd.DataFrame({'col1':['a','b','c'],'col2':['a1,a2,a3','b1','c1,c2']}) col1 col2 0 a a1,a2,a3 1 b b1 2 c c1,c2 我想制作一个独特的映射,如: pd.DataFrame({'col1':['a','a','a','b','c','c'],'col2':['a1','a2','a3','b1','c1'

Pandas xlwings/COM API格式表

我目前正在Python/Excel中使用xlwings,并希望在放入带有数据框的值后格式化一个表。但是,我无法按照我的要求设置表的格式。实际上,API似乎不理解列已经设置好了。 你能告诉我怎么做吗?这是我的密码: range_ = wb.sheets[sheet_name].range("B2") range_.expand().clear_contents() range_.options(pd.DataFrame, index=True).value = data_df range_.se

Pandas 如何将列表拆分为单独的列

我的df在下面 gender list MALE [['Office/Work'], ['31-40'], ['Salaried'], ['Master’s/PhD degree']] 预期输出df['Out'] Type Age EmpType Education Office/Work 31-40 Salaried Master’s/PhD degree 如果列表中只有一个元素值,请使用: c = ['Type',

Pandas 如何通过两列合并df1和df2?

如何在clausula on将df1和df2合并为两列(fiels) 例如: dfUltStatus = pd.merge(dfUltStatus, dfDescStatus, on=['CODIGO_STATUS','SUB_CODIGO_STATUS'], how = 'left') 对象将通过这两个字段合并两个数据帧,以产生描述字段 您是否尝试过: dfUltStatus = dfUltStatus.merge(dfDescStatus,

Pandas 如何从Prophet设置cross_validation()函数?

我正在使用Prophet(Python)大量预测和分析时间序列。这意味着我的时间序列共享相同的属性,但它们并不完全相同。它们都从2016-01-01运行到2020-07-01 我想用前3年的数据交叉验证我的结果,我的预测目标是15天 以15天预测为目标,使用前3年测试我的健康状况的最佳配置是什么 我天真的尝试如下: df_cv = cross_validation(mts, initial="1095 days", period='31 days', horizon = '1

Pandas 获取与给定行的值相等的列名称

我有一张这样的桌子: Scen F1 F2 F3 F4 0 S1 1 0 1 0 1 S2 0 1 0 1 并希望通过Scen进行搜索,并返回该行==1的列名,例如,对于S1,我需要F1,F3作为结果 我尝试了以下方法,可以通过硬编码df_col[0]得到结果,但需要能够动态地完成这项工作 最好的方法是什么 将熊猫作为pd导入 d={'Scen':[“S1”,“S2”], “F1”:[1,0], “F2”:[0,1], “F3”:[1,0],

在pandas中使用混合类型更新单行速度较慢

一行简单的代码df.iloc[100]=df.iloc[500]在具有混合类型的大型数据帧上速度非常慢,因为熊猫会复制整个列()。我不明白为什么这种行为是必要的,如果我事先确定数据类型是相同的,如何避免这种行为,并强制pandas只更新相关值。如果DF为单一类型,则不会进行复制,并且会就地修改值 我找到了一个似乎具有预期效果的变通方法,但它只适用于行号: for c in df.columns: df[c].array[100] = df[c].array[500] 它实际上比df.i

Pandas 如何获取pd.corr()使用的周期数

我怎样才能算出通过以下方法获得的相关性的质量 说到质量,我指的是有多少数据是重叠的,因此被.corr()使用。让我们用一个简短的例子来说明这一点: 让我们设置一个示例数据帧: time1 = pd.date_range(start='2020-01-01', end='2020-01-5', freq='D') time2 = pd.date_range(start='2020-01-04', end='2020-01-8', freq='D') time3 = pd.date_range(st

Pandas Scipy优化数据帧

我有这样一个数据帧: ID | size | p1 | p2 ||p10 |数量| o1 | o2 |……| o10 | p1到p10和o1到o10是32个值。大小是一个字符串。对于一个ID,可以有1个或多个大小。对于每个大小,都有一行p1..p10,但对于每个ID,只有一行o1..o10,无论它包含1个或多个大小。 我有10个这样的线性方程: f1 = [(p1S1*qS1)+(p1S2*qS2)+...+(p1Sn*qSn)] + o1 f2 = [(p2S1*qS1)+(p2S2*qS2)

Pandas groupby结果到自定义数据帧

我有下面的数据样本。我想使用d=df.groupby(['id2','type','id1']).sum()['clicks']或d=df.groupby(['id2','type','id1']).agg({'clicks':'sum}.id2是一个用户id。有许多类型,每个类型都有不同的id。我想使用groupby的结果并创建一个透视表。新的表索引是id2,列将是类型列的值I。这些值将是每种类型的单击次数之和 df = pd.DataFrame({"id1": [493,

Pandas 如何根据需要使用两个DF1列在DF2上创建新列

我有两个具有不同数据的数据帧,我需要根据在DF1的两列中获得的信息在DF2上添加一个新列。在下面的示例中,我需要检查在DF中具有相同城市和DOB值的所有条目,并在DF1中添加一个新列,表示是或否 DF1: City DOB Gender Test NYC 01/05/1990 F Positive NYC 01/06/1991 M Negative LA 12/01/1980 F

Pandas 我可以使用数据帧作为函数的输入吗?

我目前正试图通过优化依赖于这些权重的效用函数来找到最优投资组合权重。我有一个包含返回时间序列的数据帧,名为rets_optns。rets_optns有100组8项资产(800列-第一组第1列至第8列,第二组第9列至第16列)。我还有一个名为rf_options的数据框架,它有100列,表示每组收益的相应无风险利率。我想创建一个由投资组合收益组成的新数据框架,使用以下公式:p。返回=rf_optns+和(权重*rets_optns)。它应该有100列,每列应该代表由属于同一集团的8项资产组成的投资

Pandas 以类似插值的方式展开日期时间数据

我有以下日期数据,每个日期都分配给值1 是否有一种方法可以获得每小时DateTime列表的pandas列表,这样除了xls文件中的值之外,所有值都是0? 它类似于插值,但插值只是插值,而在这里,我只希望将剩余的日期填充为0。我希望将以下日期的整个24小时指定为一个。我尝试在for循环方法中执行此操作,但它只需要比以往更长的时间,而且非常不实用。使用pandas datetime访问器提取datetime对象的日期部分。然后使用来匹配这些值 # sample data df = pd.DataFr

Pandas 在Seaborn中设置标签

当我尝试在seaborn中设置标签时,我得到了一个错误,但同样的事情在matplotlib中工作得非常好。下面是seaborn代码 g = plt.figure(figsize=(15,5)) g = sns.relplot(x='Month', y='Year', data=retail_df2, kind='scatter') months = np.arange(1,13) g.set_xticklabels(labels = months) plt.title('Sales by Mon

Pandas groupby按列聚合sum()仅提供使用lambda的计数

我一直试图通过使用lambda函数来选择要求和的行()来聚合一个组中的多个列。我的问题是sum()只提供一个计数。我在熊猫方面非常平庸,已经搜索过但没有找到答案。任何答案都将不胜感激,我当然非常感谢您抽出时间 groupedByEmployeeShift['Duration1'] = groupedByEmployeeShift['Duration'] ### create a dummy column for ShiftOT below groupedByEmployeeShift['Rou

Pandas 在数据帧中合并具有相同索引的行

我有一个关于物种及其出现的数据框架。摘录如下: +-------------+------------+-------------------------------------------+--------------+-----------------+-------------+-----------+------------+----------+ | Family | Genus | Species

Pandas 除了PyArrow或使用PyArrow之外,如何提高pyspark到数据帧转换的效率

我也尝试了PyArrow,在我的示例中,我使用spark.sql语句获得了spark-datframe。之后我想转换成熊猫数据帧。为了显示执行时间,我运行了以下语句 import time startTime = time.time() df=df.toPandas() executionTime = (time.time() - startTime) executionTime 这是1021.55 我也试过了 import time startTime = time.time() spark

Pandas 设置为复制,但I';我使用的是.iloc,没有链命令,为什么?

所以我在做这个超级简单的程序,它返回一个带有复制警告的集合。我在用iloc 我的目标是检查中的值是否为null,并将其替换为具有3个None值的元组。它确实有效,但我想避免复制警告 df = pd.DataFrame({'a':[None,1, 2], 'b':[None, (1,2,3), (3,4, 5)]}) a b 0 NaN None 1 1.0 (1, 2, 3) 2 2.0 (3, 4, 5) if pd.isna(df['b'].iloc[0]):

带pandas的条件ffill()

我想根据系列中最后一个有效索引有条件地向前填充一个系列。例如,假设我们有以下系列: import pandas as pd ser = pd.Series(['a', 'b', 'b', pd.NA, 'c', pd.NA, pd.NA, 'd', pd.NA]) ser 0 a 1 b 2 b 3 <NA> 4 c 5 <NA> 6 <NA> 7 d 8 <NA>

Pandas 在数据帧中是否有可为空的布尔类型?

在我正在使用的程序中,我必须显式设置包含布尔数据的列的类型。有时,此列中的所有值都是“无”。除非我提供明确的类型信息,否则Pandas将为该列推断错误的类型信息 是否存在表示可空布尔值的兼容类型?我想做这样的事,但保留不存在的东西: s = pandas.Series([True, False, None]).astype(bool) print([v for v in s]) 给出: [True, False, False] [1, 2, <NA>, <NA>]

如何将pandas groupby/Descripte转换为标准数据帧?

通过在我的数据帧上执行此命令,我获得以下数据帧: label=dataframe[['label','area']].groupby(['label'])。description() 打印(标签) 区域 计数平均标准最小值25%50%75%最大值 标签 方形379.0 546.057942 728.552019 67.29 249.24 373.37 569.025 9772.17 三角形179.0 439.527765 363.232426 66.61 259.03 360.22 496.5

Pandas Apache Spark-sqlContext.sql到

Hy, 我有一个Spark数据框架,并使用SQL上下文进行了一些转换,例如,在所有数据中只选择两列 df_oraAS = sqlContext.sql("SELECT ENT_EMAIL,MES_ART_ID FROM df_oraAS LIMIT 5 ") 但是现在我想把这个sqlcontext转换成一个熊猫数据帧,我正在使用 pddf = df_oraAS.toPandas() 但是输出在这里停止,我需要重新启动IDE(spyder) 接下来,我创建了一个sparkContext来操作数

Pandas 按滚动窗口聚合组-键错误:';未找到列:foo';

原始数据集: index = pd.MultiIndex.from_product([['AAA','BBB'], pd.DatetimeIndex(['2017-08-17', '2017-08-20', '2017-09-08'])]) df = pd.DataFrame(data=[[1.0], [3.0], [5.0], [7.0], [9.0], [11.0]], index=index, columns=['foo']) 将数据帧重新索引为abble,以使用居中滚动窗口(使索引一致

Pandas 使用系列添加新列

我有一个熊猫数据框和一个熊猫系列。我想添加具有dataframe值的新常量列。例如: In [1]: import pandas as pd df1 = pd.DataFrame({'a': [1,2,3,4,5], 'b': [2,2,3,2,5]}) In [2]: df1 Out[2]: a b 0 1 2 1 2 2 2 3 3 3 4 2 4 5 5 In [3]: s1 = pd.Series({'c':2, 'd':3}) In

Pandas 基于指数的动态滚动窗口中最大落差和落差的确定

具有如下读数的df: import pandas as pd import numpy as np df = pd.DataFrame(np.random.randint(1000, size=100), index=range(100), columns = ['reading']) 希望根据每一行的指数找出每一行的最大升幅和最大降幅,理论上可以使用以下公式实现 如何对其进行编码 尝试: df.assign(gr8Rise=df.rolling(df.index).apply(lambda

Pandas series.where在包含列表的序列上

我有一个名为hours\u by\u analysis\u date的系列,其中索引是datetimes,值是一个整数列表。例如: Index | 01-01-2000 | [1, 2, 3, 4, 5] 01-02-2000 | [2, 3, 4, 5, 6] 01-03-2000 | [1, 2, 3, 4, 5] 我想返回值为[1,2,3,4,5]的所有索引,因此它应该返回01-01-2000和01-03-2000 我尝试了按分析日期计算的hours\u。其中(fh\u by\

基于布尔值在geopandas df中选择列名

我有一个geopandas数据帧 mmsi lat lng Paul Art Bob 123 51 65 True False False 234 78 91 False True False 345 45 13 False False True 456 61 79 False False False 我试图提取列值为True的列名,因此预期

Pandas 逐组增长数据帧

我有一个多索引数据帧。在我的示例中,有两个级别:车辆(具有属性A和B)和参考天数(具有属性1和2)。对于每辆车,每天都有一组时间(以字符串格式,例如“2330”对应于晚上11点30分,“30”对应于上午0点30分)。这些时间点按时间顺序排列,但作为1个参考日,它们可能会越过“午夜”线。也就是说,凌晨02:00的一个时间点可以计算到前一天。我希望有一个新的列,如果该行的时间时刻实际上对应于“新”的一天(即午夜线是否已越过),则该列的值为1。此示例对应于列车时刻表,其中午夜至(大约)凌晨4点之间的行

Pandas 用于比较数据库(mysql)表和CSV中的数据

我正在寻找一种比较数据库(mysql)表和CSV数据的有效方法。 首选方法是使用dataframes来比较数据,并找出数据库中任何“缺少的更新” CSV的范围从40MB到3.5GB,表最多可以有几百(200-300)列,最大表上当前的最大行数为6亿。我最大的担心和限制是内存利用率。 我做了这个比较,只在关键列(来自数据库和csv)上识别丢失的记录,虽然效果很好,但内存利用率最高。要确定数据库中没有应用的任何更新,我需要进行一次整行比较,这将非常昂贵 如果你已经用自定义脚本或工具做了类似的事情,你

上一页 1 2  3   4   5   6    7   8   9  ... 下一页 最后一页 共 280 页