草庐IT

dataframe

全部标签

python - Pandas 的性能问题和日期时间列的过滤

我有一个pandas数据框,其中一列上有一个datetime64对象。timevolumecompletecloseBidcloseAskopenBidopenAskhighBidhighAsklowBidlowAskcloseMid02016-08-0721:00:00+00:009True0.847340.848420.847060.848140.847340.848420.847060.848140.8478812016-08-0721:05:00+00:0010True0.847350.848410.847520.848320.847520.848460.847120.8482

python - Pandas 0.23 groupby 和 pct 更改未返回预期值

对于以下数据框中的每个Name,我试图找出从一个Time到下一个Amount列的百分比变化:创建数据框的代码:importpandasaspddf=pd.DataFrame({'Name':['Ali','Ali','Ali','Cala','Cala','Cala','Elena','Elena','Elena'],'Time':[1,2,3,1,2,3,1,2,3],'Amount':[24,52,34,95,98,54,32,20,16]})df.sort_values(['Name','Time'],inplace=True)我尝试的第一种方法(基于thisquestionan

python - Pandas :合并(内部连接)数据框的行数比原来的多

我在JupyterNotebook上使用python3.4,试图合并两个数据框,如下所示:df_A.shape(204479,2)df_B.shape(178,3)new_df=pd.merge(df_A,df_B,how='inner',on='my_icon_number')new_df.shape(266788,4)我认为上面合并的new_df应该比df_A有更少的行,因为合并就像一个内部连接。但是为什么这里的new_df居然比df_A有更多行呢?这是我真正想要的:我的df_A是这样的:idmy_icon_number-----------------------------A1

python - 使用 Pandas 计算 CSV 行中的分隔符

我有一个csv文件如下:name,agesomethingtom,20当我将它放入数据框时,它看起来像:df=pd.read_csv('file',header=None)011nameage2somethingNaN3tom20我如何获得原始行数据中逗号的计数。例如,答案应如下所示:#inpseudocodedf['_count_separators']=len(df.raw_value.count(','))01_count_separators1nameage12somethingNaN03tom201 最佳答案 非常简单,将

python - 如何重新排列 python pandas 数据框?

我从.csv文件中读取了以下数据框,其中“日期”列是索引。天在行中,列显示当天小时的值。>Dateh1h2h3h4...h24>14.03.201360505249...73我想这样安排,以便有一个包含日期/时间的索引列和一个包含序列中的值的列>Date/TimeValue>14.03.201300:00:0060>14.03.201301:00:0050>14.03.201302:00:0052>14.03.201303:00:0049>.>.>.>14.03.201323:00:0073我尝试使用两个循环遍历数据帧。在Pandas中有更简单的方法吗? 最

python - 将 DataFrame 列标题设置为 MultiIndex

如何将具有单级列的现有数据框转换为具有分层index列(MultiIndex)?示例数据框:In[1]:importpandasaspdfrompandasimportSeries,DataFramedf=DataFrame(np.arange(6).reshape((2,3)),index=['A','B'],columns=['one','two','three'])dfOut[1]:onetwothreeA012B345我原以为reindex()会起作用,但我得到的是NaN:In[2]:df.reindex(columns=[['odd','even','odd'],df.col

python - 在 Pandas 中找到最接近给定时间的 DataFrame 行

我有一个由DatetimeIndex索引的Pandas数据框:DatetimeIndex:53732entries,1993-01-0712:23:58to2012-12-0220:06:23Datacolumns:Date(dd-mm-yy)_Time(hh-mm-ss)53732non-nullvaluesJulian_Day53732non-nullvaluesAOT_87053732non-nullvalues440-870Angstrom53732non-nullvalues440-675Angstrom53732non-nullvalues500-870Angstrom53

python - 计算 Pandas 数据框中每个特定单词的出现次数

我想计算数据框中每个特定单词的出现次数。我目前使用str.contains:a=df2[df2['col1'].str.contains("sample")].groupby('col2').size()n=a.apply(lambdax:1).sum()有没有一种方法可以匹配正则表达式并获取出现次数?在我的例子中,我有一个大数据框,我想匹配大约100个字符串。 最佳答案 更新:原始答案计算那些包含子字符串的行。要计算一个子字符串的所有出现次数,您可以使用.str.count:In[21]:df=pd.DataFrame(['hel

python - 在 Pandas 数据框中使用什么 dtype 表示金钱?

所以我有一个pandas数据框对象,其中包含货币列,精确到小数点后两位,例如“133.04”。没有3位或更多小数位的数字,只有两位。我的尝试:十进制模块我尝试为此使用Decimal模块,但是当我尝试像这样重新采样时gr_by_price=df['price'].resample(timeframe,how='ohlc')我明白了pandas.core.groupby.DataError:Nonumerictypestoaggregate就在这之前我检查数据类型print(type(df['price'][0]))我是这个图书馆和货币处理的新手,也许Decimal不是正确的选择?我该怎么

python - 如何在 Pandas 数据框列中选择一系列值?

importpandasaspdimportnumpyasnpdata='filename.csv'df=pd.DataFrame(data)dfonetwothreefourfivea0.469112-0.282863-1.509059barTrueb0.9324241.2242347.823421barFalsec-1.1356321.212112-0.173215barFalsed0.2324242.3421120.982342unbarTruee0.119209-1.044236-0.861849barTruef-2.104569-0.4949291.071804barFals