假设 .csv 文件中有一个表
(为了方便和人类可读性,我采用了测试数据)
| ID | 234522 | 524321 | 234956 | 234983 | 293853 |
|---|---|---|---|---|---|
| 姓 | 伊万诺夫 | 塔拉索娃 | 彼得罗夫 | 库兹涅佐娃 | 普希金 |
| 地面 | 男性 | 女性 | 男性 | 女性 | 男性 |
| 出生年份 | 1965年 | 1999年 | 1984年 | 1979年 | 2001年 |
| 职称 | 工程师 | 工程师 | 工程师 | 工程师 | 工程师 |
| 儿童数量 | 2 | 1 | 3 | ||
| 电话 | 7485 | 3310 | 6500 | ||
| 办公室 | 中央 | 中央 | 中央 | 中央 | 中央 |
| 邮件 | [电子邮件受保护] | [电子邮件受保护] | [电子邮件受保护] |
您需要处理这些数据:
1 分离可变和不可变数据:
不可变数据:
| 钥匙 | 意义 |
|---|---|
| 职称 | 工程师 |
| 办公室 | 中央 |
可变数据:
| ID | 234522 | 524321 | 234956 | 234983 | 293853 |
|---|---|---|---|---|---|
| 姓 | 伊万诺夫 | 塔拉索娃 | 彼得罗夫 | 库兹涅佐娃 | 普希金 |
| 地面 | 男性 | 女性 | 男性 | 女性 | 男性 |
| 出生年份 | 1965年 | 1999年 | 1984年 | 1979年 | 2001年 |
| 儿童数量 | 2 | 1 | 3 | ||
| 电话 | 7485 | 3310 | 6500 | ||
| 邮件 | [电子邮件受保护] | [电子邮件受保护] | [电子邮件受保护] |
2 分离空数据和非空数据:
空数据(有空数据的行,没有空数据的列除外)
非空数据(仅限字符串):
| ID | 234522 | 524321 | 234956 | 234983 | 293853 |
|---|---|---|---|---|---|
| 姓 | 伊万诺夫 | 塔拉索娃 | 彼得罗夫 | 库兹涅佐娃 | 普希金 |
| 地面 | 男性 | 女性 | 男性 | 女性 | 男性 |
| 出生年份 | 1965年 | 1999年 | 1984年 | 1979年 | 2001年 |
| 职称 | 工程师 | 工程师 | 工程师 | 工程师 | 工程师 |
| 办公室 | 中央 | 中央 | 中央 | 中央 | 中央 |
我想用 pandas 将它们分开,请帮我解决问题
这些实际上是简单的任务。
如果
unmutable_data您需要根据收到的数据进行计算,那么您可以这样做:或者像这样:
更新 如果数据帧有一个“ID”列作为索引,那么代码将如下所示: