我试图在 Dataframe 的末尾添加一个空行,但无法做到,甚至试图了解Pandas如何使用append函数,但仍然没有得到它。
下面是代码:
import pandas as pd
excel_names = ["ARMANI+EMPORIO+AR0143-book.xlsx"]
excels = [pd.ExcelFile(name) for name in excel_names]
frames = [x.parse(x.sheet_names[0], header=None,index_col=None).dropna(how='all') for x in excels]
for f in frames:
f.append(0, float('NaN'))
f.append(2, float('NaN'))
有两列和随机数行。
在for循环i中使用“print f”得到这个:
0 1
0 Brand Name Emporio Armani
2 Model number AR0143
4 Part Number AR0143
6 Item Shape Rectangular
8 Dial Window Material Type Mineral
10 Display Type Analogue
12 Clasp Type Buckle
14 Case Material Stainless steel
16 Case Diameter 31 millimetres
18 Band Material Leather
20 Band Length Women's Standard
22 Band Colour Black
24 Dial Colour Black
26 Special Features second-hand
28 Movement Quartz
9条答案
按热度按时间gywdnpxw1#
下面的代码对我很有效。
eh57zj3b2#
假设你的df.index已经排序,你可以用途:
它可以很好地处理不同的索引和列类型。
[EDIT]如果有一个固定的频率,则它与pd.DatetimeIndex一起工作,否则我们必须精确地指定新的索引,例如:
长示例:
<class 'pandas.core.frame.DataFrame'> DatetimeIndex: 1 entries, 2111-11-11 to 2111-11-11 Freq: L Data columns (total 3 columns): timestamp 1 non-null datetime64[ns] speed 1 non-null int64 text 1 non-null object dtypes: datetime64[ns](1), int64(1), object(1) memory usage: 32.0+ bytes
<class 'pandas.core.frame.DataFrame'> DatetimeIndex: 2 entries, 2111-11-11 00:00:00 to 2111-11-11 00:00:00.001000 Data columns (total 3 columns): timestamp 1 non-null datetime64[ns] speed 1 non-null float64 text 1 non-null object dtypes: datetime64[ns](1), float64(1), object(1) memory usage: 64.0+ bytes
wmtdaxz33#
您还可以用途:
其中
loc
是空行索引。2wnc66cl4#
@Dave Reikher的回答是最好的解决方案。
下面是不使用
NumPy
库的类似答案len(df.index)
=行数。始终比索引计数多1。df.loc[len(df.index)]
可以选择下一个可用的索引号(行)。df.iloc[-1].name + 1
等于df.loc[len(df.index)]
df.columns.values.tolist()
['' for x in df.columns.values.tolist()]
qvtsj1bj5#
添加一个新的Pandas.使用Pandas系列.DataFrame.append().
如果要指定新行的名称(也称为“索引”),请用途:
如果不希望命名新行,请用途:
其中
df
是您的pandas.DataFrame。g0czyy6m6#
您可以通过如下方式将一个Series附加到数据框来添加它。我假设空白表示您希望添加只包含“Nan”的行。您可以首先使用Nan创建一个Series对象。确保在-Index参数中定义“Series”对象时指定列。然后您可以将其附加到DF。希望它会有所帮助!
ih99xse17#
您可以添加一个新的系列,同时命名它。名称将是新行的索引,并且所有值将自动为NaN。
e0bqpujr8#
假设
df
是您的 Dataframe ,其中
df_prime
等于df
,并具有附加的最后一行NaN。注意
pd.concat
很慢,所以如果你需要在循环中使用这个功能,最好避免使用它,在这种情况下,假设你的索引是增量的,你可以使用uqzxnwby9#
将“空”行追加到数据框并填充所选单元格:
生成空 Dataframe (无行,只有列
a
和b
):在数据框的 * 结尾 * 追加空行:
型
现在填充
a
列中 Dataframe 末尾(len(df)-1
)的空单元格:结果:
当然,用户可以遍历行并填充单元格:
结果: