dataframe填加列名
时间: 2023-11-18 22:03:09 浏览: 32
要给DataFrame添加列名,可以使用`columns`属性。例如,以下代码创建一个名为`df`的DataFrame,并将列名设置为`col1`和`col2`:
```
import pandas as pd
data = {'col1': [1, 2, 3], 'col2': [4, 5, 6]}
df = pd.DataFrame(data, columns=['col1', 'col2'])
```
在上述代码中,我们使用`columns`参数指定列名为`['col1', 'col2']`。您也可以在创建DataFrame时省略该参数,并在以后使用`columns`属性来指定列名。例如:
```
import pandas as pd
data = {'col1': [1, 2, 3], 'col2': [4, 5, 6]}
df = pd.DataFrame(data)
df.columns = ['col1', 'col2']
```
这将创建与前面相同的DataFrame,但是在创建后我们使用`columns`属性来指定列名。
相关问题
dataframe 所有方法
以下是pandas DataFrame对象的常用方法:
1. `head(n)`:返回前n行数据,默认是前5行。
2. `tail(n)`:返回后n行数据,默认是后5行。
3. `info()`:打印DataFrame对象的摘要,包括行数、列数、数据类型、缺失值等信息。
4. `describe()`:生成描述性统计信息,包括总数、均值、标准差、最小值、25%、50%、75%和最大值。
5. `shape`:返回DataFrame对象的形状,即行数和列数。
6. `columns`:返回DataFrame对象的列名。
7. `index`:返回DataFrame对象的行标签。
8. `sort_values(by, ascending=True)`:按照指定的列进行排序,ascending参数表示是否升序,默认是升序。
9. `sort_index(axis=0, ascending=True)`:按照行或列标签进行排序,axis参数表示是按照行标签还是列标签排序,默认是按照行标签排序,ascending参数表示是否升序,默认是升序。
10. `loc[row_indexer, column_indexer]`:通过行标签或列标签来选取数据,row_indexer和column_indexer分别表示行标签和列标签,可以是单个标签、标签列表或标签切片。
11. `iloc[row_indexer, column_indexer]`:通过行索引或列索引来选取数据,row_indexer和column_indexer分别表示行索引和列索引,可以是单个索引、索引列表或索引切片。
12. `drop(labels, axis=0, index=None, columns=None, level=None, inplace=False, errors='raise')`:删除行或列,labels参数表示要删除的行或列的标签,axis参数表示是按照行还是列删除,默认是按照行删除,inplace参数表示是否在原DataFrame对象上进行修改,默认是不修改,返回一个新的DataFrame对象。
13. `fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None)`:填充缺失值,value参数表示要填充的值,method参数表示填充方法,可以是ffill、bfill等,默认是None,axis参数表示按照行还是列进行填充,默认是按照行填充,inplace参数表示是否在原DataFrame对象上进行修改,默认是不修改,limit参数表示每个连续缺失值的填充次数。
14. `drop_duplicates(subset=None, keep='first', inplace=False, ignore_index=False)`:删除重复行,subset参数表示要考虑的列,默认是所有列,keep参数表示保留哪一个重复行,默认是保留第一个,inplace参数表示是否在原DataFrame对象上进行修改,默认是不修改,ignore_index参数表示是否重新设置索引,使其从0开始。
15. `groupby(by=None, axis=0, level=None, as_index=True, sort=True, group_keys=True, squeeze=False, observed=False, **kwargs)`:按照指定的列进行分组,by参数表示要分组的列名,可以是单个列名或多个列名组成的列表或Series对象,默认是按照所有列进行分组,返回一个GroupBy对象。
16. `aggregate(func=None, axis=0, *args, **kwargs)`:对每个分组进行聚合操作,func参数表示要进行聚合的函数,可以是内置函数、自定义函数或函数列表,默认是对所有列应用所有可用的聚合函数,axis参数表示按照行还是列进行聚合,默认是按照行进行聚合。
17. `transform(func=None, axis=0, *args, **kwargs)`:对每个分组应用指定的函数,并将结果广播到原DataFrame的每个元素中,func参数表示要进行转换的函数,可以是内置函数或自定义函数,默认是对所有列应用指定的函数,axis参数表示按照行还是列进行转换,默认是按照行进行转换。
18. `pivot_table(values=None, index=None, columns=None, aggfunc='mean', fill_value=None, margins=False, dropna=True, margins_name='All')`:生成透视表,values参数表示要聚合的列,index参数表示行索引,columns参数表示列索引,aggfunc参数表示聚合函数,fill_value参数表示缺失值的填充值,margins参数表示是否添加行和列的汇总,默认是不添加,dropna参数表示是否删除缺失值所在的行或列,默认是删除,margins_name参数表示汇总行和列的名称。
如何将list转换为dataframe
你可以使用 pandas 库中的 DataFrame() 方法,将 list 转换为 dataframe。示例如下:
import pandas as pd
my_list = [['Alice', 25], ['Bob', 30], ['Charlie', 35]]
df = pd.DataFrame(my_list, columns=['Name', 'Age'])
其中,my_list 是一个包含列表的列表,每个内部列表代表一个数据行;columns 参数为 dataframe 的列名,可不填。
运行后得到的 df 数据框如下:
Name Age
0 Alice 25
1 Bob 30
2 Charlie 35
你可以根据具体需求,使用 pandas 库中的方法进一步处理数据框。