Python DataFrame 初始空表带表头
在数据分析和处理中,Python的pandas库是一个非常强大和常用的工具。其中的DataFrame是一种二维数据结构,类似于Excel或SQL中的表。DataFrame可以容纳不同类型的数据,并且提供了灵活的操作方法,可以对数据进行筛选、排序、分组等操作。
本文将介绍如何创建一个初始为空的DataFrame,并为其添加表头。
创建初始空表
要创建一个空的DataFrame,可以使用pandas库的DataFrame()构造函数,并将一个空的列表作为参数传递给它。例如:
import pandas as pd
df = pd.DataFrame([])
这样就创建了一个空的DataFrame。但是,这个DataFrame没有表头,也没有任何数据。
添加表头
要为DataFrame添加表头,可以使用pandas库的columns参数,将一个列表作为参数传递给它。列表中的每个元素都是表头的名称。
import pandas as pd
df = pd.DataFrame([], columns=['A', 'B', 'C'])
这样就创建了一个空的DataFrame,并为其添加了'A'、'B'和'C'三个表头。
操作空表
创建了一个初始为空的DataFrame之后,可以通过一些操作来填充数据。
首先,可以使用pandas库的append()方法向DataFrame中添加新的行。例如:
import pandas as pd
df = pd.DataFrame([], columns=['A', 'B', 'C'])
df = df.append({'A': 1, 'B': 2, 'C': 3}, ignore_index=True)
df = df.append({'A': 4, 'B': 5, 'C': 6}, ignore_index=True)
print(df)
运行以上代码,将输出:
A | B | C |
---|---|---|
1 | 2 | 3 |
4 | 5 | 6 |
可以看到,通过append()方法,我们可以一行一行地添加数据。
此外,还可以使用pandas库的loc[]方法来直接修改DataFrame中的某个元素。例如:
import pandas as pd
df = pd.DataFrame([], columns=['A', 'B', 'C'])
df.loc[0, 'A'] = 1
df.loc[0, 'B'] = 2
df.loc[0, 'C'] = 3
df.loc[1, 'A'] = 4
df.loc[1, 'B'] = 5
df.loc[1, 'C'] = 6
print(df)
运行以上代码,输出的结果与上面的方法相同。
类图
下面是一个简单的类图,展示了DataFrame的类结构:
classDiagram
class DataFrame{
- data: ndarray
- columns: Index
- index: Index
- dtype: dict
- name: str
- _metadata: list
- _is_copy: NDFrame
- _data: BlockManager
+ T()
+ all()
+ any()
+ append()
+ apply()
+ as_matrix()
+ asfreq()
+ asof()
+ astype()
+ at()
+ axes
+ between_time()
+ bfill()
+ bool()
+ boxplot()
+ clip()
+ clip_lower()
+ clip_upper()
+ combine()
+ concat()
+ convert_objects()
+ corr()
+ corrwith()
+ count()
+ cov()
+ cummax()
+ cummin()
+ cumprod()
+ cumsum()
+ describe()
+ diff()
+ div()
+ divide()
+ dot()
+ drop()
+ drop_duplicates()
+ dropna()
+ duplicated()
+ eq()
+ equals()
+ ewm()
+ expanding()
+ ffill()
+ fillna()
+ filter()
+ first()
+ first_valid_index()
+ floordiv()
+ from_csv()
+ from_dict()
+ from_items()
+ from_records()
+ ge()
+ get()
+ get_dtype_counts()
+ get_ftype_counts()
+ get_value()
+ get_values()
+ gt()
+ head()
+ hist()
+ idxmax()
+ idxmin()
+ iloc[]
+ info()
+ insert()
+ interpolate()
+ is_copy()
+ isin()
+ isnull()
+ item()
+ items()
+ iteritems()
+ iterrows()
+ itertuples()
+ ix[]
+ join()
+ keys()
+ kurt()
+ kurtosis()