我目前正在从事一个业余项目,但我被困在熊猫中植入DataFrame。我有三个DataFrames。我的问题:
对于DataFrame1中的每个DataFrame1,如果列m等于1,则将列n添加到DataFrame3中的x列中。
对于DataFrame1中的每个DataFrame1和DataFrame2将列y设置为1,如果DataFrame1中的列c等于1,或者DataFrame2中的列d等于1。c等于99具有最高优先级,并将y设置为99
有人能帮帮我吗?
DataFrame1
| id | n | m | c |
|--------|------
我有一个dataframe,并将索引设置为dataframe的一个列。这将创建分层列索引。我想把这些列夷为平地。但是,类似于这个问题-- ,列不重叠(即“id”不在层次索引的0级,其他列位于索引的第1级)。
df = pd.DataFrame([(101,3,'x'), (102,5,'y')], columns=['id', 'A', 'B'])
df.set_index('id', inplace=True)
A B
id
101 3 x
102 5 y
我有两个dataframe,我需要连接一列,如果id包含在第二个dataframe的同一列中,则只从第一个dataframe中提取行:
df1:
id a b
2 1 1
3 0.5 1
4 1 2
5 2 1
df2:
id c d
2 fs a
5 fa f
所需输出:
df:
id a b
2 1 1
5 2 1
我尝试使用df1.join(df2("id"),"left"
是否可以将具有相同标识符的列合并,并将这些列从相同的数据帧堆在一起。还要删除NA值,如所需的DataFrame输出所示?
电流DataFrame
id Col1 Col2 Col3
1 A NA C
1 NA B NA
2 NA B NA
2 A NA C
3 A NA C
期望DataFrame
id NewCol
1 A
1 B
1 C
2
我正在尝试使用dataframe id列(与数据库表中的id相同)和另一列的相应值(例如"text")来更新mysql表,但我无法通过准备好的语句传递正确的列(我尝试了不同的方法,但它只是抛出警告)。有人知道如何解决这个问题吗?我相信这很容易。 我已经打开了一个连接,要插入的查询是 query = """ UPDATE user
SET extra = ?
WHERE id = ? """ 而数据帧是这样的: data= pd.DataFrame({'id&
我要合并5个文件。每个文件的某些列名在其他文件中是相同的。我使用来执行concat操作。有一个列在所有文件中都是唯一的,即ID。当我合并这些列时,我注意到后缀(_x,_y)被应用于正在重复的列名的末尾(由于合并功能)。如何将这些列合并为单个列(不考虑空值)。
例:
Dataframe 1
ID Name Age LAN_NBR
1 ABC 24 G284992
Dataframe 2
ID Name Street City State TYPE
2 John Wacker Chicago IL
我有一个带有列标题和数据的文本文件。我正在尝试将这些文件数据转换成熊猫DataFrame。
文件:
#Columns: TargetDoc|GRank|LRank|Priority|Loc ID
aaaaa|1|1|Slow|8gkahinka.01
aaaaa|1|0|Slow|7nlafnjbaflnbja.01
我编写了以下代码:首先,我将每一行和尝试列表转换为Dataframe:
import os
import pandas as pd
with open("DocID101_201604070523.txt") as raw_file:
full_file
我有一个有四列的DataFrame。我想将这个DataFrame转换为python字典。我希望第一列的元素是keys,而同一行的其他列的元素是values。
DataFrame:
ID A B C
0 p 1 3 2
1 q 4 3 2
2 r 4 0 9
产出应如下:
字典:
{'p': [1,3,2], 'q': [4,3,2], 'r': [4,0,9]}
请看我的excel工作表快照附在左上角.当我从这个工作表创建一个DataFrame时,我的第一列和第一行都填充了NaN。我需要跳过这个空白的行和列来选择用于创建DataFrame的第二行和第二列。
Unnamed: 0 Unnamed: 1 Unnamed: 2 Unnamed: 3
0 NaN ID SCOPE TASK
1 NaN 34 XX something_1
2 NaN 534 SS something
我有两个数据帧。为了简单起见,我将在这里提供两个虚拟数据帧。
A = pd.DataFrame({'id':[1,2,3], 'name':['a','b','c']})
B = pd.DataFrame({'id':[1,1,1,3,2,3,1]})
现在,我想在数据帧B上创建一个列,其名称与ids匹配。在这种情况下,我的期望输出将是:
B = pd.DataFrame({'id':[1,1,1,3,2,3,1], 'name':['a','