Pandas 的 DataFrame(~)
构造函数用于初始化新的 DataFrame。
参数
1.data
| scalar
或 2D ndarray
或 iterable
或 dict
或 DataFrame
dict
可以包含标量和类似数组的对象,例如列表、Series 和 NumPy 数组。
2. index
| Index
或 array-like
| optional
用于 DataFrame 的索引。默认情况下,如果未传递index
且data
未提供索引,则将使用整数索引。
3. columns
| Index
或 array-like
| optional
用于 DataFrame 的列标签。默认情况下,如果未传递 columns
并且 data
未提供列标签,则将使用整数索引。
4. dtype
| dtype
| optional
如果可能,用于 DataFrame 的数据类型。只允许一种类型,如果类型转换不成功也不会抛出错误。默认情况下, dtype=None
,即推断数据类型。
5. copy
| boolean
| optional
仅当 data
是 DataFrame
或 2D ndarray
时,此参数才相关。
-
如果
True
,则返回新的DataFrame。修改返回的 DataFrame 不会影响data
,反之亦然。 -
如果是
False
,那么修改返回的DataFrame也会改变原来的data
,反之亦然。
默认情况下,copy=False
。
返回值
DataFrame
对象。
例子
使用数组字典
要使用数组字典创建DataFrame:
df = pd.DataFrame({"A":[3,4], "B":[5,6]})
df
A B
0 3 5
1 4 6
这里,字典的键值对如下:
-
key
:列标签 -
value
:该列的值
此外,由于 data
不包含任何索引(即行标签),因此使用默认的整数索引。
使用嵌套字典
要使用嵌套字典创建DataFrame:
col_one = {"a":3,"b":4}
col_two = {"a":5,"b":6}
df = pd.DataFrame({"A":col_one, "B":col_two})
df
A B
a 3 5
b 4 6
在这里,我们在 col_one
和 col_two
中指定了索引。
使用系列
要使用系列创建DataFrame:
s_one = pd.Series([3,4], index=["a","b"])
s_two = pd.Series([5,6], index=["a","b"])
df = pd.DataFrame({"A":s_one, "B":s_two})
df
A B
a 3 5
b 4 6
使用二维数组
我们可以传入 2D 列表或 2D NumPy 数组,如下所示:
df = pd.DataFrame([[3,4],[5,6]])
df
0 1
0 3 4
1 5 6
请注意默认的行和列标签是整数索引。
使用常数
要使用单个常量初始化DataFrame,我们需要指定参数columns
和index
以定义DataFrame的形状:
pd.DataFrame(2, index=["a","b"], columns=["A","B","C"])
A B C
a 2 2 2
b 2 2 2
指定列标签和索引
要显式设置列标签和索引(即行标签):
df = pd.DataFrame([[3,4],[5,6]], columns=["A","B"], index=["a","b"])
df
A B
a 3 4
b 5 6
指定数据类型
要设置所有列类型的首选项:
df = pd.DataFrame([["3",4],["5",6]], dtype=float)
df
0 1
0 3.0 4.0
1 5.0 6.0
请注意 "3"
如何转换为 float
。
请注意,即使类型转换不成功,也不会抛出错误。例如:
df = pd.DataFrame([["3@@@",4],["5",6]], dtype=float)
df
0 1
0 3@@@ 4.0
1 5 6.0
这里,列的数据类型如下:
df.dtypes
0 object
1 float64
dtype: object
相关用法
- Python Pandas DataFrame empty属性用法及代码示例
- Python Pandas DataFrame pop方法用法及代码示例
- Python Pandas DataFrame nsmallest方法用法及代码示例
- Python Pandas DataFrame sample方法用法及代码示例
- Python Pandas DataFrame items方法用法及代码示例
- Python Pandas DataFrame max方法用法及代码示例
- Python Pandas DataFrame swaplevel方法用法及代码示例
- Python Pandas DataFrame agg方法用法及代码示例
- Python Pandas DataFrame copy方法用法及代码示例
- Python Pandas DataFrame pow方法用法及代码示例
- Python Pandas DataFrame insert方法用法及代码示例
- Python Pandas DataFrame lt方法用法及代码示例
- Python Pandas DataFrame all方法用法及代码示例
- Python Pandas DataFrame unstack方法用法及代码示例
- Python Pandas DataFrame mean方法用法及代码示例
- Python PySpark DataFrame filter方法用法及代码示例
- Python Pandas DataFrame tz_convert方法用法及代码示例
- Python Pandas DataFrame isin方法用法及代码示例
- Python PySpark DataFrame collect方法用法及代码示例
- Python PySpark DataFrame intersect方法用法及代码示例
- Python PySpark DataFrame dtypes属性用法及代码示例
- Python Pandas DataFrame rank方法用法及代码示例
- Python Pandas DataFrame tail方法用法及代码示例
- Python Pandas DataFrame transform方法用法及代码示例
- Python DataFrame.to_excel()用法及代码示例
注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 Pandas | DataFrame constructor。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。