我有一个具有行和列多索引的数据帧,如下所示 BLUB BLA
A B C D
sample
0 blub ... ...
1 blub ...
2 blub
3 blub
4 blub
0 blub
1 blub
2 blub
... ... 我想重新编入这个索引 BLUB BLA
A B C D
sample
0 blub
我已经创建了如下数据帧 df = pd.DataFrame({'A': ['a','b'],
'B': ['c','d'],
'C':[1,2]
})
df.head()
A B C
0 a c 1
1 b d 2 我想创建前两列[ab,ad,cb,cd]的组合,作为新的数据帧头和基于第一个df的值。 我期望的新df是: ac ad bd
考虑一个简单的数据帧:
import numpy as np
import pandas as pd
x = pd.DataFrame(np.arange(10).reshape(5,2))
print(x)
0 1
0 0 1
1 2 3
2 4 5
3 6 7
4 8 9
我想创建一个具有以下形式的分层索引数据框架:
0 1
a b a b
0 0 NaN 1 NaN
1 2 NaN 3 NaN
2 4 NaN 5 NaN
3 6 NaN 7
我想将列添加到Pandas多索引数据帧中,其中将包含对其他列执行的操作的结果。
我有一个和这个类似的数据:
first bar baz
second one two one two
A 5 2 9 2
B 6 4 7 6
C 5 4 5 1
现在,对于dataframe中的每个组,我想添加一个列“3”,它等于列“1”减去“2”:
first bar baz
second one two three one two three
A
假设我想创建一个多索引和多列的数据帧: X Y
Planet Continent Country A B C D
Earth Europe England 0.3 0.5 0.6 0.8
Europe Italy 0.1 0.2 0.4 1.2
Mars Tempe Sirtys 3.2 4.5 2.3 4.2 我想通过迭代收集数据帧的每一行来做到这一点, row1 = np.array(['Earth'
我有嵌套的字典,我尝试导出到excel我有生成正确数据帧的代码,想法是在excel中生成它,但我在excel中只得到了列的一部分,这是我做错的地方。 user_ids = []
frames = []
for user_id, d in res_duplicate.items():
for item in d:
user_ids.append(user_id)
frames.append(pd.DataFrame.from_dict(item, orient='index'))
df = pd.concat(frames, keys
我有两个数据框,如下所示 数据帧A: dataDate name prediction
2018-09-30 A 2.30
2018-10-01 A 1.51
2018-10-02 A 2.08
2018-10-03 A 1.82
2018-09-30 B 0.96
2018-10-01 B 6.52
2018-10-02 B 9.21
2018-10-03 B 17.43
2018-09-30 C 6.89
2018-10-01 C 6.10
2018-10-02 C 5.53
2018-10-03
我有一个带有索引和列的dataframe,比如'a','b','c‘,所以它现在看起来像这样: a b c
a 0 0 0
b 0 0 0
c 0 0 0
etc 然后我有另一个数据帧,它有有序的对,然后是一个值,比如: pair val
(a, b) 0.9
(b, c) 12
etc 是否可以迭代或创建一个函数,为行a和列b中的单元格分配来自具有该特定对的其他数据帧的值?基本上,在第一个数据帧的行a和列b中,它不是0,而是0.9? 我知道我不应该遍历dataframe,但我不确定在这种情况下如何使用apply()
我有多个数据帧,每个数据帧都有一个多级索引和一个值列。我想要将值列上的所有数据帧相加。
df1 + df2
并不是每个数据帧中的所有索引都是完整的,因此我在不是所有数据帧中都存在的行上获取nan。
如何克服这个问题,并将任何dataframe中不存在的行视为值为0?
例如:我想要得到
val
a 2
b 4
c 3
d 3
来自pd.DataFrame({'val':{'a': 1, 'b':2, 'c':3}}) + pd.DataFrame({'val':{'a':
我有两个数据帧(A和B),分别代表事务的两个方面,分别有m和n行。有几个唯一标识这些事务的关键列。我需要找到row_in_A和row_in_B,这样这两个键列就相等了,其余的列就不重要了。然后,我需要从相应的dfs中删除这些行。 之前: 在A中: Seller | Buyer | Side A
----------------------
X | Y | True
C | D | True 在B中: Seller | Buyer | Side B
----------------------
X | Y | True 假设键列仅为卖方和买
我想在与其他列具有相同结构的多索引列数据帧的level(0)中添加一列,即: level(1) index是相同的: In [151]: df
Out[151]:
first bar baz
second one two one two
A 0.487880 -0.487661 -1.030176 0.100813
B 0.267913 1.918923 0.132791 0.178503
C 1.550526 -0.31223
我被困在为熊猫数据创建多个索引的知识中。我的数据是一张有230 x 640的图像。我添加了一个带有时间戳的列,现在我想创建一个具有x、y坐标和时间戳的Multiindex。我也需要时间戳作为索引,因为我用不同的时间戳连接多个帧,但是具有相同的帧宽和高度。
有办法创建这样的索引吗?我的目标是得到:嘿值2和0太高了。
我的数据看起来像(val是一个温度值):
0 1 2 .. 639 ts
0 val val val .. val
1 val ..
2 ..
..
229
我有一个数据帧,如下所示:Multi-index dataframe by columns 我想得到3个数据帧命名为每个列(指南针,加速度,陀螺仪)与时间索引不动,每个三列(df1,df2,df3)。 我试过for index,row in df.iterrows():,但不能让它真正工作,我在想用stack()和unstack()命名,但不知道怎么用。
我想通过转置一些列和固定其他列来重新格式化数据帧。 原始数据: ID subID values_A
-- ----- --------
A aaa 10
B baa 20
A abb 30
A acc 40
C caa 50
B bbb 60 旋转一次: pivot_table( df, index = ["ID", "subID"] ) 输出: ID subID values_A
我有以下DataFrame: data_raw (201 x 600)
Column Level 0: ROE_1 ROE_2 Test_EQ_1
Column Level 1: A B C D E F G H I J .... (200 items)
Index Level 0: 1 2 3 4... (201 items) 我正在尝试删除Test_EQ_1列。 使用后: data_raw = data_raw.drop("Test_EQ_1", axis=1, level=0) 数据帧的维度减少到201x400 (如预期)。所有包含Test_EQ_1的列都消失了(不出所料
假设我有一个多索引数据帧,如下所示
In [221]: df
Out[221]:
first bar baz
second one two one two
A -1.089798 2.053026 0.470218 1.440740
B 0.488875 0.428836 1.413451 -0.683677
C -0.243064 -0.069446 -0.911166 0.47837
我想在每个第一级列中添加第三和第四列,即“bar”和“baz”。
我一
我有两个数据帧(A和B)。我想要删除B中列Month、Year、Type、Name的值完全匹配的所有行。 数据帧A Name Type Month Year country Amount Expiration Paid
0 EXTRON GOLD March 2019 CA 20000 2019-09-07 yes
0 LEAF SILVER March 2019 PL 4893 2019-02-02 yes
0 JMC GOLD March 2019 IN
我已经读取了excel输入文件,并将其转换为pandas数据帧格式,如下所示。它有三列办公室编号、日小时数、日费率和两行数值[(101,8,60),102,8,60)输入: OFFICE NO DAY HOURS DAY RATES
101 8 60
102 8 60 我的最终输出在文本文件中只需要两列在一线办公室没有,白天的工作。第二行将需要两个划分的小时,费率列下的“白天工作”主列名称。输出: OFFICE NO DAY JOB
HOURS RATES
101 8