我喜欢在pandas dataframe中填充na,其中dataframe中的两列都在同一行上。 A B C
2 3 5
Nan nan 7
4 7 9
Nan 4 9
12 5 8
Nan Nan 6 在上面的数据框中,我希望将列A和列B都有Nan的行替换为“不可用”。 因此: A B C
2 3 5
Not available not available 7
4 7 9
Nan 4 9
12 5 8
Not available not available 6 我尝试了多种方法,但得到了不想要的结果
给定以下DataFrame
A B
0 -10.0 NaN
1 NaN 20.0
2 -30.0 NaN
我希望合并列A和B,用来自列B的值填充列A中的NaN单元格,然后删除列B,从而生成如下所示的DataFrame:
A
0 -10.0
1 20.0
2 -30.0
我通过使用iterrows()函数解决了这个问题。
完整的代码示例:
import numpy as np
import pandas as pd
example_data = [[-10, np.NaN], [np.NaN, 20], [-30, np.NaN]]
exampl
我尝试按列合并两个CVS文件,但遇到错误。
import os
import pandas as pd
os.chdir('/home/yovel/PycharmProjects/fantasyfinal')
a = pd.read_csv("statsmerger.csv")
b = pd.read_csv("team.csv")
b = b.dropna(axis=1)
merged = a.merge(b, on = 'player')
merged.to_csv("output1.csv", index
我想用最接近的(从左侧开始) e列的值填充not NaN列的NaN。
a b c d e
0 1 2.0 3.0 6.0 3.0
1 3 5.0 7.0 NaN NaN
2 2 4.0 NaN NaN NaN
3 5 6.0 NaN NaN NaN
4 3 NaN NaN NaN NaN
例如,对于e的第二行,它最接近的Not NaN列是e by position,然后我们以7.0为例,在Pandas中可以这样做吗?谢谢。
预期输出如下所示:
a b c d e
0 1 2.0
我有一个数据框架,它有一个名为SAM的列,它包含以下数据
SAM
3
5
9
Nan
Nan
24
40
Nan
57
现在,我想分别在12、15和43值中插入Nan (因为9+3=12、12+3=15和40+3=43)。换句话说,通过将Nan添加到上一行(也可以是Nan)来填充任何3行。
我知道这可以通过遍历for循环来完成。但我们能用矢量化的方式做吗?就像ffill的一些修改版本(如果我们没有连续的NaNs,它可以在这里使用),在pandas.fillna()中。
如何将这样格式的excel文件读入pandas DataFrame? a b c d e f
Type 1 22 Car Yes 2019
Train Yes
Type 2 25 Car No 2018
Notype 1 Car Yes 2019
Train 第一行有三列,它们是合并的单元格(2行),而其余的是单独的行 问题是如果我用 data = pd.read_excel("excel
我试图使用Panda库的'loc‘函数在dataset中的一个列中计算缺少的值,但是代码没有成功执行。代码行如下所示。
# Impute missing data by mean weight of each sub-category in 'Item_Weight' column
data.loc[miss_bool,'Item_Weight'] = data.loc[miss_bool,'Item_Identifier'].apply(lambda x: item_avg_weight[x])
正在生成的错误如下,
data.loc
我有一个包含许多空值的稀疏Pandas数据帧,我希望对其进行过滤,以便在最终数据集中只保留具有超过10个浮点型条目的行和列。我尝试使用现有的代码片段,但似乎不起作用: df.drop([col for col, val = df.count(axis=1, numeric_only='float') if val < 10], axis=1, inplace=True) 谁能告诉我在我的数据帧中删除稀疏列的最好方法是什么?
在我的项目中,我需要检查整个dataframe列中是否存在一些值。示例dataframe:
df=pd.DataFrame([['abc', 'a'], ['def', 'x'], ['aef', 'f']])
df.columns=['a', 'b']
>>>df
a b
0 abc a
1 def x
2 aef f
这个静态代码运行良好:
df['a'].str.contains('f')
我试图使用标准偏差从单个列(然后从多个列)填充空单元格。我见过几种解释,但到目前为止还没有看到任何与这个问题直接相关的解释。提前谢谢您的时间!
以下是我到目前为止所拥有的:
为了获得随机值,我首先计算了Math列的平均值:
filename = os.path.join(os.path.dirname(__file__),'exam.csv')
data = pd.read_csv(filename)
math_mean = data['Math'].mean()
print(math_mean)
The output of that is 73.625
然后
我正在努力检查具有相同行和列索引的两个pandas数据透视表(填充值1和Nan)之间的相似性百分比。我想计算相同的行数,并将它们除以总行数。给出基本的例子:
df1
column1 column2 column3
idx1 Nan 1 Nan
idx2 1 Nan 1
idx3 Nan Nan 1
df1
column1 column2 column3
idx1 1 Nan 1
i
Python新手。我正在导入一个CSV,如果有任何数据丢失,我需要返回一个带有附加列的CSV,以指示哪些行缺少数据。我的同事建议我将CSV导入到一个数据帧中,然后创建一个带有"Comments“列的新数据帧,在其中填充对目标行的注释,并将其附加到原始数据帧中。我陷入了使用与"dfinput“匹配的正确行数填充新的dataframe "dferr”的步骤。 我搜索过"pandas csv return error column where data is missing",但没有找到任何与创建标记坏行的新CSV相关的内容。我甚至不知道提出的方法是不是最好
Python 3.9和Pandas 1.3.4
这里是df:
1 First Name Last Name fullname
2 Freddie Mercury Freddie Mercury
3 John Lennon John Lennon
4 David Bowie David Bowie
5 John Doe
6 Joseph Joseph
7 Jovi Jovi
我的代码目前只发现f
我试图创建一个函数,用不同的数值尺度,在多个序列中填充缺失的数字,同时为每个系列生成一个常量列。
from tika import parser
import pandas as pd
import numpy as np
import io
rawtext = parser.from_file('D:\Selenium\Texto.txt')
text = rawtext['content']
f = io.StringIO(text)
f.readline()
data = f.read()
f.readline()
def fill(d):
id
我有Pandas DataFrame,在这里我导入了包含几百行的Excel电子表格。每行都是一个公司名称,在每一列中都有一些基本数据,如比率等。
Symbol Name P/BV PE NCB
A AGT 4.382 42.59 0.0145
AAAP AdvAc 6.91 NaN -0.0003
AAME AtlAm 0.6205 29.55 0.0089
AAN Aaron 2.093 23.89 0.0213
更多的列和更多的行,但我认为这足以说明数据。有时,没有值的比率,所以自动有填充的NaN值。
我想做的是评估每一